Skip to content

Integrations ​

An integration is a deployed Airnode over exactly one API. It is the unit that runs.

Airnode itself is a library, not a service. An integration supplies the OpenAPI document of the API being wrapped and starts a server with it. That is the whole of the contract, so an integration that needs no bespoke behaviour is a handful of lines and a document. They are built together, and a deployer decides which one to run.

This split is what keeps the bar low for providers. The machinery is written once and the thing that differs per API is a document the provider already has.

Integrations are meant to be many, so these docs describe what they share rather than any particular one. AirnodeHub is the list of them, and each listing's page carries the details of the API behind it, so all you need here is how an integration works in general.

Nodary ​

The worked example wraps the Nodary API, aggregated price data from one of the providers powering API3's data feeds. It serves one operation, latestFeeds, which returns the latest value of every feed Nodary serves, keyed by feed name, or only the feeds named.

Every price is quoted in USD, such as ETH/USD, across crypto, stablecoin and forex feeds, and none is quoted in any other currency. Liquid staking feeds carry a token's exchange rate to what it wraps instead. Each price is aggregated from multiple sources, so what the Airnode serves is Nodary's one number for the pair rather than any single exchange's.

One signature that reaches the producer ​

Nodary is worth reading about as a first-party case. Since both Nodary and this Airnode are operated by API3, there is only one signature, with no middlemen involved.

What the attestation means ​

An attestation says this Airnode obtained this response from this upstream at this time. Whether it means more than that depends on the API being wrapped, because not every upstream is a function. An API that answers the same request differently each time, a language model being the obvious case, leaves nothing to reproduce: the attestation is provenance and nothing else. Two Airnodes over such an upstream will never agree, so aggregating across them, which is exactly the right move for a price, means nothing there.

Status ​

We build and deploy every integration that exists today, and list each one on AirnodeHub. An integration can price an operation. The caller then pays per call through x402, in a USD stablecoin. An operation with no price stays free. An integration over a paid upstream can declare its prices and still serve everything free, until its code also names the address that gets paid.