| CPS | 16 | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Title | Cardano URIs | |||||||||||||||
| Category | Tools | |||||||||||||||
| Status | Open | |||||||||||||||
| Authors |
|
|||||||||||||||
| Proposed Solutions | ||||||||||||||||
| Discussions |
|
|||||||||||||||
| Created | 2024-06-15 | |||||||||||||||
| License | CC-BY-4.0 |
Cardano URI schemes (CIP-0013) have been defined since early 2021. However, some of the proposed standards have languished and struggled for adoption event as the amount of wallet developers in the ecosystem has skyrocketed. This CPS aims to create a centralized point of reference for those interested in creating new standards or publishing integration solutions.
A keen pain point in the utilization of blockchain is the archaic and convoluted processes necessary to interact with the blockchain or cite historical ledger data. Well-defined URI schemes can provide a plethora of easy access and interaction methods, particularly to mobile users, since they can leverage deep-linking and QR technologies to pass data between applications.
The Cardano URI Scheme(s) that exist already present several fantastic use cases for URI schemes. We welcome additional or expanded definitions to be added to this section for further discussion, development, and adoption by the community.
- The original specification of CIP-0013 defined only the
base
web+cardano:scheme and an authority-less path consisting of a payment address and an optionalamountquery parameter to specify via QR code or deep-link an address and amount of Lovelace to send. - In 2024 a new CIP was proposed defining an explicit
//payauthority as well as path and query parameters to support Native Assets and transaction Metadata.
- The first extension to CIP-0013 added the
//stakeauthority and some query parameter options to specify a Cardano Stake Pool. The goal of these URIs would be to make it easy for a user to switch their wallet's stake delegation to the pool in question. This could be performed via easy deep-link integration on stake pool website(s) and social media, and also through real-world advertising such as banners, flyers, and business cards at marketing and networking events.
- In 2023 CIP-0099 was introduced, adding a
//claimauthority and defining a URI + wallet interaction protocol that would allow a user with only access to a URI to "claim" an airdrop of Lovelace and/or Native Assets assuming that both the wallet and the project server were correctly configured to follow the protocol.
- In 2026 CIP-0158 introduced a new
//browseauthority defining a URI with versioning to allow opening a percent-encodedhttps://orhttp://address including forwarded parameters in the in-app browser of mobile wallets with the intent to gain easier access to the full wallet functionality and improve the overall mobile user experience.
- Also in 2026 CIP-0162 introduced a new
//drepauthority defining a new URI and wallet behaviour for frictionless DRep delegation, taking in a CIP-0129 DRep-Id with the intent to open the wallet-app, validate the DRep-Id against on-chain data and - if a valid Id of a registered DRep has been provided - create a governance delegation transaction for the user to sign and submit.
- In 2023 CIP-0107 was proposed, this CIP introduced the
//blockand//transactionauthorities along with relevant path and query parameters. This novel use of URI structures allows for easy reference to specific events and points in time of the blockchain ledger's history. This proposal makes referencing a point in the chain's history relatively trivial which can be an important step in data availability layers for external on- and off-chain solutions.
The goals of this CPS are as follows:
- Provide an easy-to-reference repository for all
web+cardano:URI solutions to simplify integrations. - Define a list of known
web+cardano:URI authorities to prevent overlap and collision by developers creating new solutions. - Provide a platform to centralize new discussions about emerging standards that may arise in the future.
- What can we do as a community to encourage more applications and software
providers to support
web+cardano:URIs? - What software or best practices exist to aid developers in deploying support
for
web+cardano:URIs? - What new authorities or protocols could be built to leverage these URIs?
- What does the process look like to register a new
web+cardano:URI authority or protocol?
Recent best practices in this repository suggest that the preferred method is for new standards that expand functionality should be defined as new, discrete CIPs unless the existing CIP provides for the capability of versioning and iterative improvement.
By creating separate, discrete CIPs for new standards this allows for a clean history of discussion and community consensus building around new standards as well as measurable progress towards adoption.
Per URI Syntax a URI consists of the following structure:
URI = scheme ":" ["//" authority] path ["?" query] ["#" fragment]Given that the shared scheme of web+cardano: is known and accepted and the
original version of CIP-0013 declared an authority-less, path-only structure:
**All future web+cardano: URI extensions MUST register a new, unique authority
or SHOULD define a new version of an existing authority that has explicitly
allowed for versioning in its definition.
The following are the currently registered URI authorities mentioned in CIPs:
null: (Blank/no Authority) registered in CIP-0013//stake: registered in CIP-0013//claim: supports versioning, registered in CIP-0099//transaction: supports versioning (?), registered in CIP-0107//block: supports versioning (?), registered in CIP-0107//addr: registered in CIP-00134//browse: registered in CIP-0158//drep: registered in CIP-0162
This CPS is licensed under CC-BY-4.0.