dAPIs are on-chain data feeds sourced from off-chain first-party oracles owned and operated by API providers themselves and are continuously updated using signed data. dApp owners can read the on-chain value of any dAPI in realtime.
dAPIs can serve a variety of continuously updated streams of off-chain data, such as the latest cryptocurrency, stock, and commodity prices. They can power various decentralized applications such as DeFi lending, synthetic assets, stable coins, derivatives, NFTs, and more.
API providers, owners of first-party Airnodes, provide the signed data used to store individual beacon values on-chain. A dAPI's value is in turn an aggregate of beacon values. dAPI values are held in the Api3ServerV1.sol contract.
Api3ServerV1.sol manages the definitions for hundreds of dAPIs, each of which is an aggregated value of multiple beacons or the value of a single beacon.
Airnode is a flexible off-chain module that can support multiple protocols. Most noticeably is its implementation of the request-response protocol (RRP) and data feeds.
An Airnode is owned by an API provider and is used to call API provider endpoints to fetch and sign data at the request of Airseeker. Airseeker uses the signed data to determine if the deviation of a beacon value warrants an on-chain update.
In the diagram above, companies XYZ and ABC both provide ZIL/USD beacon values, A and B, respectively, that are aggregated to determine the dAPI ZIL/USD value. Airseeker regularly checks the deviation of ZIL/USD using the sign data from these Airnodes. Airseeker will update the corresponding beacons behind ZIL/USD when deviation is detected.
When a dApp requests the value of ZIL/USD, it will get the aggregated value of the beacons behind the dAPI ZIL/USD.
Self-funded dAPIs were made available in March 2023. These are community funded and community manage dAPIs that are only sourced from a single data feed (beacon). The funding is used to pay gas costs incurred by an Airnode as it places the dAPI's value on-chain when a deviation threshold is reached.
Any dApp owner can fund a dAPI and any dApp owner can use the dAPI. Meaning that if three dApp owners are using the dAPI and only one provides funding, the other two would benefit. However this is not best practice for the two that do not provide funding as their dApp could fail if the original dApp decides to discontinue further funding. So the community benefits from a community funding approach.
A managed dAPI is actually the process of upgrading a self-funded dAPI to become a managed dAPI. Here the dApp that does the upgrade pays a small fee which is used to pay gas costs incurred by the Airnode to place the dAPI value on-chain. Unlike self-funded dAPIs, API3 will manage the gas cost with the fees collected. This is advantages as the dApp owner does not need to worry about the community based funding model that might cause the dAPI to shut down due to lack of funding.
Development and expansion of dAPIs beyond self-funded and managed dAPIs will include OEV share. More details for OEV share will be forthcoming. Please feel-free to ask questions about the evolution of dAPIs on Discord.