Skip to content

LLD:DeepLinking

ofreyssinet-ledger edited this page Nov 6, 2024 · 17 revisions

Deep Linking Ledger Live Desktop 🔗

It is possible to launch Ledger Live Desktop and open a specific section or modal by using a deep link.

All Ledger Live deep links start with the ledgerlive:// URI.

MacOS Settings & Dev builds

On mac the Dev builds will override the default deeplink for LLD prod.

So if you want/need to reset the deeplink you can use this tool: https://github.com/Lord-Kamina/SwiftDefaultApps It allows you to change the target for the ledgerlive deeplink, as seen in the image below.

image (1)

Routing

Every route is preceded by the protocol ledgerlive://.

Some routes allow you to use query params to pass additional context.

⚠️ You should not use anchor tag inside your deeplink ⚠️

This is especially true for discover related deeplinks.

Keep in mind that everything after an anchor tag is client side (in this case Ledger Live) and will then not be forwarded to the liveApp (even query params). Have a look at this resource for more context.

portfolio - Portfolio Page (default landing)

Query String Parameters: None

Examples:

  • ledgerlive:// or ledgerlive://portfolio

accounts - Accounts Page

Query String Parameters: None

Examples:

  • ledgerlive://accounts will redirect to accounts page

account - Account Page

Query String Parameters:

  • currency (required): the ticker or name of the currency

Examples:

  • ledgerlive://account?currency=btc will open the first bitcoin account found
  • ledgerlive://account?currency=ethereum&address=0x1fd2c4d9e5Fd4f9B4B..Ec9C40F88324fB Open 0x1fd2c4d9e5Fd4f9B4B..Ec9C40F88324fB's Account page. If you have same account but on Polygon and you change currency with polygon then you go to Polygon's Account page

add-account - Add Account Modal

Query String Parameters:

  • currency (optional): the ticker or name of the currency

Examples:

  • ledgerlive://add-account Opens Add Account Modal
  • ledgerlive://add-account?currency=bitcoin Opens Add Account Modal with Bitcoin pre-filled

send - Send Flow

Query String Parameters:

  • currency (optional): the ticker of the currency
  • amount: the amount to send
  • recipient: the address to send to

Examples:

  • ledgerlive://send will redirect to send page (modal)
  • ledgerlive://send?currency=ethereum will redirect to send page with the first ethereum account found, if no account then redirect to Add Account flow with the currency pre-filled
  • ledgerlive://send?currency=ethereum&recipient=0xex...xxx&amount=3 will redirect to send page with the first ethereum account found and recipient and amount pre-filled

receive - Receive Flow

Query String Parameters:

  • currency (optional): the ticker or name of the currency

Examples:

  • ledgerlive://receive will redirect to receive page (modal)
  • ledgerlive://receive?currency=ethereum will redirect to receive page with the first ethereum account found, if no account then redirect to Add Account flow with the currency pre-filled

delegate - Delegate Flow

Query String Parameters:

  • currency (required): the ticker or name of the currency

Examples:

  • ledgerlive://delegate?currency=tezos will redirect to receive page with the first tezos account found

Only currency supported is currently tezos.

buy - Buy Crypto Flow

Query String Parameters: See liveApp documentation

Examples:

  • ledgerlive://buy will redirect to buy page

swap - Swap Crypto Flow

Query String Parameters: None

Examples:

  • ledgerlive://swap will redirect to swap page

myledger - Device Management Flow

Query String Parameters: None

  • installApp: the search query to be pre-filled when MyLedger opens

Examples:

  • ledgerlive://myledger will redirect to MyLedger page
  • ledgerlive://myledger?installApp=bitcoin will redirect to MyLedger page with a pre-filled search for bitcoin

discover/:liveAppId/ - Live Discover Catalog

Url Parameter:

  • liveAppId (optional): the liveApp id

Query String Parameters:

  • &{params}: the url query params that will be transmitted to the liveApp (please refer to each apps documentation in order to use them).

Examples:

  • ledgerlive://discover will redirect to discover page
  • ledgerlive://discover/paraswap will redirect to the discover catalog page of Paraswap
  • ledgerlive://discover/paraswap?accountId=1 will redirect to the discover catalog page of Paraswap with a pre-selected first account

earn - Earn Dashboard

Examples:

  • ledgerlive://earn will redirect to earn dashboard page
  • ledgerlive://earn?action=stake will open staking flow
  • ledgerlive://earn?action=stake-account&accountId=1 will open staking flow with selected account prefilled
  • ledgerlive://earn?action=get-funds&currencyId=ethereum will open buy drawer with specified currency

market - Live Market Page

Query String Parameters: None

Examples:

  • ledgerlive://market will redirect to market page

settings - Settings

  • ledgerlive://settings/
  • ledgerlive://settings/general
  • ledgerlive://settings/accounts
  • ledgerlive://settings/about
  • ledgerlive://settings/help
  • ledgerlive://settings/experimental

Misc - To be updated later in proper sections

ledgerlive://wc ledgerlive://post-onboarding ledgerlive://storyly

ledgerlive://ledgersync ledgerlive://bridge

Clone this wiki locally