Deep linking

Build deep links to open Foxglove Studio (either the desktop or web app) with specific data sources.

platformlink prefixbehaviorlink example
Desktopfoxglove://openPrompts user to confirm opening the desktop appfoxglove://open?ds=ros1-socket&ds.url=localhost:11311
Webhttps://studio.foxglove.devDisplays web page that prompts user to choose between opening the web or desktop apphttps://studio.foxglove.dev?ds=ros1-remote-bagfile&ds.url=https://storage.googleapis.com/foxglove-public-assets/demo.bag

Loading a data source

To specify your data source and time:

query paramtyperequireddescription
dsDesktop app:
  • Native ROS 1: ros1-socket
  • Native ROS 2: ros2-socket
Desktop and web app:
Data source
timeTimestamps in RFC3339 formatTimestamp to seek to (for non-live data sources)

Native ROS 1 connections

i.e. ds=ros1-socket

query paramtyperequireddescription
ds.urlstringROS master URL

Native ROS 2 connections

i.e. ds=ros2-socket

query paramtyperequireddescription
ds.urlstringROS_DOMAIN_ID

Foxglove Data Platform data

i.e. ds=foxglove-data-platform

query paramtyperequireddescription
ds.deviceIdstringRobot ID
ds.startTimestamps in RFC3339 formatStart of data playback range
ds.endTimestamps in RFC3339 formatEnd of data playback range

Foxglove WebSocket data

i.e. ds=foxglove-websocket

query paramtyperequireddescription
ds.urlstringWebSocket URL

Remote ROS 1 bag files

i.e. ds=ros1-remote-bagfile

query paramtyperequireddescription
ds.urlstringURL to .bag file

Rosbridge WebSocket connections

i.e. ds=rosbridge-websocket

query paramtyperequireddescription
ds.urlstringWebSocket URL