TUM Blockchain & AI Hackathon 30–31 Oct 2026 Munich

Any API in
your contract.

Real-world data.
Checked by your contract.

Bring signed API data on-chain. Build an app or agent where your contract checks the response and makes something happen.

Get aUSD · Browse integrations
~50 APIs · Signed responses · No oracle network to integrate

€2,000PRIZE POOL
PAID IN USDC
x402TESTNET USD
BASE SEPOLIA
~50 APIsREAL-WORLD DATA
ONE CATALOG
01 / The challenge

The data should
make the difference.

A contract can’t call an API. A user, keeper or agent has to deliver the response. AirnodeHub lets your contract check who signed it, what request it answers and when it was signed — before using it.

Build an app or agent whose core on-chain function depends on verified AirnodeHub data. A single API call added to a demo is not enough.

01

Pick the data.

Find an API. Choose the operation, parameters and response fields your contract needs.

02

Get it signed.

Call the Airnode. For a priced operation, pay with x402 in testnet USDC or AirnodeHub USD on Base Sepolia.

03

Bring it on-chain.

A user, keeper or agent submits the response and signature in their own transaction.

04

Verify. Then act.

Your contract checks the expected signer, request and freshness, then uses the signed fields.

What the proof means

The signature authenticates the Airnode’s response. It shows that the signed data has not been changed by whoever delivered it. It does not independently prove the underlying real-world claim is true. Choose your source and trust assumptions deliberately.

02 / Start building

Start with the flow.
Make it your own.

The starter uses a signed Nodary ETH/USD response. It includes a verifier, JSON field reader, example contract, a client and tamper tests.

GET THE STARTER
git clone --recurse-submodules https://github.com/api3dao/airnodehub-hackathon-starter.git
cd airnodehub-hackathon-starter
pnpm install
forge test
pnpm test

Requires Foundry, Node.js 22.18+ and pnpm.

  1. Find the input your app needs.

    Explore AirnodeHub for flights, weather, market prices, sports, company registries and more. Check the operation and response fields before committing to your idea. The integrations list shows which listings are recommended for the hackathon.

  2. Fund the data payment.

    Get testnet USDC from Circle’s faucet on Base Sepolia, or mint AirnodeHub USD (aUSD), API3’s test dollar, from its faucet. Use a payment-capable x402 client to call priced operations directly on the Airnode.

  3. Adapt the contract and prove the action.

    Configure the expected Airnode and request. Define freshness for your use case, deploy, and show the signed response driving a meaningful on-chain action.

Access payment and application action are separate transactions. Priced calls use testnet USDC or aUSD on Base Sepolia. Your application can use a chain that supports the required signature verification. You will also need Base Sepolia ETH to mint aUSD and the relevant gas token for your application transactions. The x402 facilitator pays the access-transfer gas.
03 / What to submit

Show the action.
Show the checks.

Make it easy for judges to see the whole flow and test it themselves. Signed data must be essential to the application.

  • A deployed contract that verifies an Airnode signature and uses the signed data in its core workflow.
  • Signer, request and time checks appropriate to the use case. Check source observation time and prevent duplicate execution where needed.
  • A working demo and a public repository with setup instructions, the deployment network and contract address.
  • A way to submit our own responses through your app or a documented script, so we can run the tamper test.
  • A short explanation: who relies on the data, what goes wrong if it is forged, and what data you wanted but couldn’t find on AirnodeHub.

The tamper test

PASS / FAIL

These checks are required to qualify.

  • One value editedREJECT
  • Response too old for your use caseREJECT
  • Response to a different requestREJECT
  • Signed by an unexpected keyREJECT

And a valid response must work. Show a fresh response for the expected request and signer being accepted and causing the intended action. Rejecting everything does not pass.

04 / Prizes

€2,000

For projects worth building.Paid in USDC by the hackathon organisers.

1st place€1,000
2nd place€600
3rd place€400

TENTATIVE ALLOCATION · FINAL SPLIT AT THE JUDGES’ DISCRETION

The proposed prize split is tentative. API3 reserves the right to award the entire prize pool to a single outstanding submission where its quality and novelty warrant it, or to distribute prizes more evenly among submissions that are closely matched in quality. Final allocations will be determined by API3’s judges. Prizes will be paid in USDC by the hackathon organisers.

What the judges look for

Make the case.

Real use case40 / 100

A real problem for someone who would use it or pay for it.

Signed data matters30 / 100

The contract’s decision depends on checking the data.

Execution20 / 100

The full flow works and the demo makes it clear.

Novelty10 / 100

A thoughtful, original use of verifiable external data.

+10

Autonomous agent bonus. Up to 10 additional points for an agent that runs the core workflow over time: chooses data, pays through x402 when required, and acts on-chain without a person starting every cycle. Payment alone or one-off MCP discovery does not earn the bonus. Maximum total: 110.

A place to start

What should your
contract know?

Start with the decision. Then find the data that makes it possible. These are directions to explore, not separate prize categories.

Conditions → payments

Pay when
the condition holds.

Release funds when a flight is delayed, weather crosses a threshold or a company meets a registry condition.

Explore: flights · weather · company registries

Signals → safeguards

Give your contract
a reason to act.

Pause a protocol, adjust a position or change an on-chain state in response to a verified external signal.

Explore: market prices · DeFi · live events

Agents → accountable actions

Let the agent decide.
Let the contract check.

An agent selects and buys data. The contract only permits the resulting action when the signed evidence meets its rules.

Explore: any listing that fits your decision

Before you dive in

A few useful
answers.

The full guide covers projections, signatures, payments and the starter in more detail.

Does every call need a payment?

Most operations are priced during the hackathon. A priced call returns HTTP 402 with payment requirements. A compatible x402 client signs a testnet USDC or aUSD payment on Base Sepolia and retries the request. Check the operation you choose; don’t assume all calls are paid or free.

Does using x402 earn the agent bonus?

No. Paid access is part of fetching priced data. The bonus is for an agent running the core application workflow autonomously over time. Show repeated cycles, including when it waits or refuses to act.

Can a signature tell whether a news claim is true?

No. It authenticates the Airnode's response and detects changes. You still choose suitable sources and define how the application handles conflicting claims. An AI interpretation is a separate trust decision.

Can my agent use the MCP server?

Yes. Use it to find listings, operations and parameters. The Hub’s MCP call-operation refuses priced operations, so use a payment-capable client to call the Airnode directly. Discovery through MCP does not automatically fund or pay for data.

https://airnodehub.api3.org/mcp
Whose signature am I checking?

The Airnode’s Ethereum signing key. Configure its expected address from the Airnode’s GET / document; don’t trust an address supplied with an incoming response. Nodary runs its own Airnode. For the other listings described in the challenge, API3 runs an Airnode over the provider’s API and attests to the response.

What does “fresh enough” mean?

Your application decides. The attestation timestamp tells you when the Airnode signed the response. The source’s observation time can be different. Define both checks where relevant, including whether the data must be from after a particular event. Prevent an accepted response from triggering the same action twice when your use case requires it.

Is a dashboard or a single API call enough?

The contract must verify the signed data and use it for an essential part of the application. Merely displaying a value or adding an incidental API request does not meet the challenge. The action need not move money, but removing verified data should break the core workflow.

Where do I find help?

Talk to API3’s mentors at the hackathon, ask in the API3 Support topic of the official TUM Blockchain & AI Hackathon Telegram group, or follow the full challenge guide and AirnodeHub documentation. Upstream API quotas are shared across teams: cache useful responses and avoid tight polling loops. The integrations list shows the limits of each listing.

Give your contract a world outside.

Find the data. Verify the response. Build something that depends on it.

Get the starter