POLYMER
~$2B volume
POLYMER PROVEAPI / cross-chain proof generation

Proofs across
every chain.

One HTTP call. A cryptographic proof that something happened on another chain. Your contract verifies it in one line of Solidity. No relayer, no light client, no custom infrastructure to maintain.

READ THE DOCS HOW IT WORKS
Source chain
Base · chain_id 8453
Tx hash
0x9a3fb21c
Event
log_index 2
Block
23,448,219 · finalized
CRYPTOGRAPHIC PROOF · CrossL2ProverV2 proof_id 0x4a8f2c1b…e92c // 2,341 bytes · RLP
MERKLE INCLUSION 0xa1.. 0xb7.. 0x3e.. 0xff.. leaves · receipt logs h(a1‖b7) h(3e‖ff) receipts_root ↓ committed in block header PATH: [ 0xb7.., h(3e‖ff) ] DEPTH: 2
POLYMER · CRYPTOGRAPHIC PROOF · VERIFIABLE · POLYMER · CRYPTOGRAPHIC PROOF · VERIFIABLE · PROOF_BYTES 0x4a8f…e92c keccak256 · 32 B VERIFIED ✓
SRC BLOCK HEADER number 23,448,219 parent_hash 0x9f12…aa01 state_root 0x73c8…b14d receipts_root 0xe4ab…0c2f tx_hash 0x9a3f…b21c log_index 2 SIGNED: consensus · finalized ANCHOR: receipts_root ≡ merkle root
CONTAINSblock_header · merkle_path · log_payload
VERIFIES TOCrossL2ProverV2.validateEvent(proof) → (chainId, emitter, topics, data)
0x4a8f2c1b9d7e4f3a8c61b9027ee9d4a8c2f1b73d6e4a91c8f3b27d1e9c4a8f2c · 0x9f12aa01b73d6e4a91c8f3b27d1e9c4a8f2c1b9d7e4f3a8c61b902 · 0xe4ab0c2f3a8c61b9027ee9d4a8c2f1b73d6e4a91c8f3b27d1e9c4a8f · 0x73c8b14d6e4a91c8f3b27d1e9c4a8f2c1b9d7e4f3a8c61b9027ee9d4 · 0x4a8f2c1b9d7e4f3a8c61b9027ee9d4a8c2f1b73d6e4a91c8f3b27d1e9c4a8f2c · 0x9f12aa01b73d6e4a91c8f3b27d1e9c4a8f2c1b9d7e4f3a8c61b902 · 0xe4ab0c2f3a8c61b9027ee9d4a8c2f1b73d6e4a91c8f3b27d1e9c4a8f · 0x73c8b14d6e4a91c8f3b27d1e9c4a8f2c1b9d7e4f3a8c61b9027ee9d4 ·
Dest chain
Optimism · chain_id 10
Verifier
CrossL2ProverV2 · Solidity
Integration
1 HTTP call + 1 verify call
Latency
seconds after finality
// PROOF SHAPE
Source-chain state dest-chain bytes
Merkle inclusion · packed for the consumer's verifier contract
// INTEGRATION
1 HTTP call · ~50 lines of Solidity
No relayer to run. No light client to maintain.
// STATUS
Live in production
Actively supported · existing customer integrations
01 // HOW IT WORKS

Request a proof. Verify on the other side.

ProveAPI sits between any two chains. Ask it to prove an event or piece of state on the source chain. It returns a single payload your destination contract verifies in one call.

STEP / 01
Application calls ProveAPI

Tell ProveAPI which event you want to prove: chain, block, log index. Authenticate with your API key.

CALLER · OFFCHAIN
STEP / 02
Service composes the proof

ProveAPI builds a cryptographic proof against the source chain's state and packages it into a single payload your destination contract will accept.

PROVEAPI · MANAGED
STEP / 03
Destination contract verifies

Your contract calls validateEvent(proof) on the CrossL2ProverV2 predeploy. Returns the verified event payload. ~50 lines of Solidity to integrate.

CONSUMER · ONCHAIN
POST api.polymer.zone/v1/ · log_requestProof REQUEST

  "jsonrpc": "2.0", "id": 1,
  "method": "log_requestProof",
  "params": [
    "srcChainId":      8453,        // Base
    "srcBlockNumber":  23448219,
    "globalLogIndex":  42           // log index in block
  ]
200 application/json · proof_query POLL → COMPLETE

  "jsonrpc": "2.0", "id": 2,
  "result": 
    "status": "complete",
    "proof":  "0x01f9…a2d4"      // base64 IAVL proof bytes
  
02 // USE CASES

Anywhere a contract needs to know something happened elsewhere.

Bridges, intent solvers, omnichain governance, cross-chain oracles. Anywhere you currently run your own relayer infrastructure or trust a multisig to pass data between chains.

CASE / 01

Bridges & messaging

Move funds across chains. Replace your relayer pipeline with a verified proof of the source-chain event.

e.g.token bridges · order routing · vault rebalancing
CASE / 02

Intent solvers

Settle cross-chain intents the moment they're filled. No extra trust assumption, no off-chain attesters.

e.g.cross-chain swaps · solver settlement · escrow release
CASE / 03

Oracles & governance

Read a value or vote on one chain, prove it on another. Powers omnichain DAOs, cross-network price feeds, and policies that span L2s.

e.g.omnichain voting · price refs · L1↔L2 readbacks
// CHAINS SUPPORTED
Ethereum mainnet · L2 rollups
Base · Optimism · Arbitrum · Polygon zkEVM · others — see docs
// PROOF FORMAT
CrossL2ProverV2 · Solidity predeploy
Single bytestring · onchain verifier library · stable ABI
// LATENCY
Seconds, not minutes
Available once the source-chain block is finalized to the destination's expected depth
// AUTH
API key · per-project quotas
Self-serve in dashboard · usage tiers in docs
LIVE IN PRODUCTION
Read the full docs ↗
MONOMER LABS 2026
Privacy·Terms