The Ethereum Foundation announced Oct. 1 that zkAPI, a billing system for metered APIs coauthored by Davide Crapis and Vitalik Buterin, is now running on Ethereum mainnet. The system documents two withdrawal routes for users to recover unspent deposits: a mutual close requiring server signature, and an escape withdrawal that does not require server clearance.
zkAPI was designed to enable private AI-payment flows where individual API requests do not move money onchain. Users hold spending states locally and use cryptographic proofs to authorize metered service. The system stores deposits in native ETH denominated through pinned Chainlink ETH/USD price quotes.
Withdrawal and Expiry Mechanics
The escape withdrawal route initiates without server cooperation and enters an 86,400-second challenge period (24 hours). During this window, valid challenges can restore a note to the active set without imposing monetary penalty, allowing detection of attempts to withdraw from already-used states.
Active notes expire after 30 days. Once expired, code permits an expiry claim that sends the full deposit to the vault treasury. This mechanism ensures users cannot indefinitely hold capital in the system if the billing server becomes unresponsive.
The vault owner holds pause power over deposits, mutual close operations, and new escape initiations. However, the owner cannot pause pending escape finalization, challenges, or expiry claims, creating a structural limit on unilateral freeze capacity.
Implementation Status and Design Lineage
Crapis and Buterin published the underlying zkAPI design on Feb. 11. Open Anonymity built the mainnet implementation, with OpenRouter operating as the inference provider. The Ethereum Foundation partnered on the launch.
The manifest describes the implementation as experimental and not production-audited. Setup documentation states keys were generated by one party with no multiparty ceremony.
Deposit Denomination Clarification
The Ethereum Foundation announcement describes the vault as holding USDC credits. The current mainnet manifest identifies the same vault as native ETH with balances denominated in whole gwei, reflecting the system’s use of onchain ETH for deposit settlement.