Skip to main content

Shareable links

Build and share deep links with your teammates to open Foxglove with specific layouts and data sources.

To open Foxglove using a specific layout or data source, construct a "deep link" URL using the format:

https://app.foxglove.dev/{YOUR-FOXGLOVE-SLUG}/view?param1=value2&param2=value2

Supported query parameters are documented below, or you can copy any URL while you are using the app.

Web vs. desktop

By default, links will open in the browser. You can open the desktop app instead using the openIn parameter:

parametertyperequireddescription
openInstringweb (default)
desktop

openIn=desktop opens in the Foxglove app. If it is not installed, it presents a landing page that prompts the user to download the app or open the link in the browser. This is the preferred approach to open the Foxglove app.

The foxglove:// URL scheme also opens in the Foxglove app. This fails silently if the Foxglove app is not installed.

prefixexample
https://app.foxglove.dev/{YOUR-FOXGLOVE-SLUG}/viewhttps://app.foxglove.dev/{YOUR-FOXGLOVE-SLUG}/view?ds=foxglove-websocket&ds.url=ws://localhost:8765&openIn=desktop
foxglove://openfoxglove://open?ds=foxglove-websocket&ds.url=ws://localhost:8765

Layouts

To load a saved layout (personal or team):

parametertyperequireddescription
layoutIdstringFoxglove's ID for a remotely saved layout

To get a URL with the correct layoutId param, open the web app and click your desired layout in the "Layouts" menu.

Timestamp

parametertyperequireddescription
timetimestamp
(RFC3339)
Timestamp to seek to (for non-live data sources)

Data sources

To specify your data source, use the ds parameter as documented according to your desired data source below.

For example, a Rosbridge connection may look like the following:

https://app.foxglove.dev/{YOUR-FOXGLOVE-SLUG}/view?ds=rosbridge-websocket&ds.url=ws%3A%2F%2Flocalhost%3A9090&layoutId=2644147b-f205-456c-ace9-69466aaac0b7

Foxglove WebSocket

parametertyperequireddescription
dsstringfoxglove-websocket
ds.urlstringWebSocket URL (i.e. ws://localhost:8765)

Rosbridge

parametertyperequireddescription
dsstringrosbridge-websocket
ds.urlstringWebSocket URL (i.e. ws://localhost:9090)

ROS 1 Native

(Supported on desktop only)

parametertyperequireddescription
dsstringros1-socket
ds.urlstringROS Master URI

Foxglove

parametertyperequireddescription
dsstringfoxglove-stream
ds.deviceIdstringSee below*The device id in Foxglove
ds.deviceNamestringSee below*User assigned device name
ds.starttimestamp
(RFC3339)
With ds.deviceId or ds.deviceNameStart of data playback range
ds.endtimestamp
(RFC3339)
With ds.deviceId or ds.deviceNameEnd of data playback range
ds.recordingIdstringSee below*ID of the recording to open
ds.recordingKeystringSee below*Key of the recording to open
ds.importIdstringDeprecated. Prefer ds.recordingId insteadID of the import to open
info

One of ds.deviceId, ds.deviceName, ds.recordingId or ds.recordingKey is required

Remote files

parametertyperequireddescription
dsstringremote-file
ds.urlstringURL to .bag or .mcap file