Detecting Actions via URL Schemes

Blinks may be linked to Actions in at least 3 ways:

  1. Sharing an explicit Action URL: solana-action://https://actions.alice.com/donate. In this case, only supported clients may render the Blink. There will be no fallback link preview, or site that may be visited outside of the unsupporting client.

  2. Sharing a link to a website that is linked to an actions API via an actions.json file on the website root domain.

    E.g. https://alice.com/actions.json maps https://alice.com/donate, a website URL at which users can donate to Alice, to API URL e.g. https://actions.alice.com/donate, at which Actions for donating to Alice are hosted.

  3. Embedding an Action URL in an “interstitial” site or mobile app deep link URL that understands how to parse actions.

    E.g. https://dial.to/?action=solana-action:https://actions.alice.com/donate or https://dial.to/?action=solana-action:https://dial.to/api/donate

If you want to test if your Action URL does indeed unfurl on a Blink, you can paste it into dial.to and it will render the Blink modal.

We've included an Action validation tool in there which will parse your API and check if the GET, POST and OPTIONS requests work as required. (It even checks for CORS errors)

Last updated