Skip to content

Algorand ARCs

Welcome to the Algorand ARCs (Algorand Request for Comments) page. Here you’ll find information on Algorand Improvement Proposals.

Living Arcs

Number Title Description
0 ARC Purpose and Guidelines Guide explaining how to write a new ARC
72 Algorand Smart Contract NFT Specification Base specification for non-fungible tokens implemented as smart contracts.
200 Algorand Smart Contract Token Specification Base specification for tokens implemented as smart contracts

Final Arcs

Number Title Description
1 Algorand Wallet Transaction Signing API An API for a function used to sign a list of transactions.
2 Algorand Transaction Note Field Conventions Conventions for encoding data in the note field at application-level
3 Conventions Fungible/Non-Fungible Tokens Parameters Conventions for Algorand Standard Assets (ASAs) for fungible tokens and non-fungible tokens (NFTs).
4 Application Binary Interface (ABI) Conventions for encoding method calls in Algorand Application
5 Wallet Transaction Signing API (Functional) An API for a function used to sign a list of transactions.
16 Convention for declaring traits of an NFT's This is a convention for declaring traits in an NFT's metadata.
18 Royalty Enforcement Specification An ARC to specify the methods and mechanisms to enforce Royalty payments as part of ASA transfers
19 Templating of NFT ASA URLs for mutability Templating mechanism of the URL so that changeable data in an asset can be substituted by a client, providing a mutable URL.
20 Smart ASA An ARC for an ASA controlled by an Algorand Smart Contract
21 Round based datafeed oracles on Algorand Conventions for building round based datafeed oracles on Algorand
22 Add `read-only` annotation to ABI methods Convention for creating methods which don't mutate state
23 Sharing Application Information Append application information to compiled TEAL applications
25 Algorand WalletConnect v1 API API for communication between Dapps and wallets using WalletConnect
26 URI scheme A specification for encoding Transactions in a URI format.
27 Provider Message Schema A comprehensive message schema for communication between clients and providers.
28 Algorand Event Log Spec A methodology for structured logging by Algorand dapps.
32 Application Specification A specification for fully describing an Application, useful for Application clients.
35 Algorand Offline Wallet Backup Protocol Wallet-agnostic backup protocol for multiple accounts
36 Convention for declaring filters of an NFT This is a convention for declaring filters in an NFT metadata
47 Logic Signature Templates Defining templated logic signatures so wallets can safely sign them.
54 ASA Burning App Standardized Application for Burning ASAs
55 On-Chain storage/transfer for Multisig A smart contract that stores transactions and signatures for simplified multisignature use on Algorand.
56 Extended App Description Adds information to the ABI JSON description
59 ASA Inbox Router An application that can route ASAs to users or hold them to later be claimed
62 ASA Circulating Supply Getter method for ASA circulating supply
65 AVM Run Time Errors In Program Informative AVM run time errors based on program bytecode
69 ASA Parameters Conventions, Digital Media Alternatives conventions for ASAs containing digital media.
73 Algorand Interface Detection Spec A specification for smart contracts and indexers to detect interfaces of smart contracts.
74 NFT Indexer API REST API for reading data about Application's NFTs.
78 URI scheme, keyreg Transactions extension A specification for encoding Key Registration Transactions in a URI format.
79 URI scheme, App NoOp call extension A specification for encoding NoOp Application call Transactions in a URI format.
82 URI scheme blockchain information Querying blockchain information using a URI format

Last Call Arcs

Number Title Description
53 Metadata Declarations A specification for a decentralized, Self-declared, & Verifiable Tokens, Collections, & Metadata
71 Consensual Soul Bound ASA Interface Soul Bound Algorand Standard Asset

Withdrawn Arcs

Number Title Description
12 Claimable ASA from vault application A smart signature contract account that can receive & disburse claimable Algorand Smart Assets (ASA) to an intended recipient account.

Deprecated Arcs

Number Title Description
6 Algorand Wallet Address Discovery API API function, enable, which allows the discovery of accounts
7 Algorand Wallet Post Transactions API API function to Post Signed Transactions to the network.
8 Algorand Wallet Sign and Post API A function used to simultaneously sign and post transactions to the network.
9 Algorand Wallet Algodv2 and Indexer API An API for accessing Algod and Indexer through a user's preferred connection.
10 Algorand Wallet Reach Minimum Requirements Minimum requirements for Reach to function with a given wallet.
11 Algorand Wallet Reach Browser Spec Convention for DApps to discover Algorand wallets in browser
15 Encrypted Short Messages Scheme for encryption/decryption that allows for private messages.
33 xGov Pilot - Becoming an xGov Explanation on how to become Expert Governors.
34 xGov Pilot - Proposal Process Criteria for the creation of proposals.
42 xGov Pilot - Integration Integration of xGov Process
48 Targeted DeFi Rewards Targeted DeFi Rewards, Terms and Conditions
49 NFT Rewards NFT Rewards, Terms and Conditions

ARC Status Terms

  • Idea - An idea that is pre-draft. This is not tracked within the ARC Repository.
  • Draft - The first formally tracked stage of an ARC in development. An ARC is merged by an ARC Editor into the ARC repository when properly formatted.
  • Review - An ARC Author marks an ARC as ready for and requesting Peer Review.
  • Last Call - This is the final review window for an ARC before moving to FINAL. An ARC editor will assign Last Call status and set a review end date (`last-call-deadline`), typically 14 days later. If this period results in necessary normative changes it will revert the ARC to Review.
  • Final - This ARC represents the final standard. A Final ARC exists in a state of finality and should only be updated to correct errata and add non-normative clarifications.
  • Stagnant - Any ARC in Draft or Review if inactive for a period of 6 months or greater is moved to Stagnant. An ARC may be resurrected from this state by Authors or ARC Editors through moving it back to Draft.
  • Withdrawn - The ARC Author(s) have withdrawn the proposed ARC. This state has finality and can no longer be resurrected using this ARC number. If the idea is pursued at a later date it is considered a new proposal.
  • Deprecated - This ARC has been deprecated. It has been replaced by another one or is now obsolete.
  • Living - A special status for ARCs that are designed to be continually updated and not reach a state of finality.