Wallet Verification for AI Agents

Before two agents exchange information, both verify their wallets satisfy the same on-chain condition. Authentication infrastructure for autonomous agents.

Powered by The Insumer Model™ wallet verification engine.

Agents Need Qualification, Not Identity

Current agent protocols answer "who are you?" with API keys and OAuth tokens. But the real question is "what do you hold?" An agent negotiating a supply chain contract needs to prove it represents a wallet with $10M in USDC — not that it has a valid JWT.

AgentTalk replaces identity-based auth with condition-based attestation. Both agents verify the same on-chain conditions before a session begins. No credentials to share. No trust assumptions. Just cryptographic proof.

// Identity-based (current)
Agent A: "Here's my API key"
Agent B: "OK, I trust you"
// → Trust the credential, not the holder

// Condition-based (AgentTalk)
Agent A: "Prove you hold 10M USDC"
Agent B: "Prove you hold a DAO NFT"
// → Both pass attestation, session begins
// → Sell the token, lose the session
Agent A declares conditions
Agent B submits wallet
Both wallets attested on-chain
Signed session token issued
Agents exchange data

Sell the token → lose the session. Dynamic access, enforced on-chain.

How It Works

1

Declare

Agent A declares conditions for a channel — token balances, NFT ownership, or trust profiles across any of 31 chains.

2

Connect

Agent B discovers the channel and submits its wallet address to join.

3

Attest

Both wallets are independently verified against the declared conditions via InsumerAPI. ECDSA-signed attestations.

4

Session

If both pass, a signed session token (JWT) is issued. Both agents can verify the session at any time.

5

Verify

Sessions can be re-verified on demand. Dynamic access enforcement — the session reflects current on-chain state.

Code Examples

1. Declare conditions for a channel

POST /api/agenttalk/declare
x-api-key: insr_live_...

{
  "wallet": "0xABc123...",
  "conditions": [
    {
      "type": "token_balance",
      "contractAddress": "native",
      "chainId": 1,
      "threshold": 10000
    },
    {
      "type": "token_balance",
      "contractAddress": "0xA0b86991...",
      "chainId": 137,
      "threshold": 50000,
      "decimals": 6
    }
  ],
  "expiresIn": 3600
}

2. Join channel & get session

POST /api/agenttalk/join
{
  "channelId": "ch_a1b2c3d4...",
  "wallet": "0xd8dA6BF26964aF9D7eEd9e03E..."
}

Declaration response

{
  "channelId": "ch_a1b2c3d4...",
  "conditionsHash": "0x7f83b165...",
  "expiresAt": "2026-03-16T13:00:00Z"
}

Session response

{
  "sessionId": "ses_x9y8z7...",
  "sessionToken": "eyJhbGciOiJIUzI1NiI...",
  "expiresAt": "2026-03-16T13:00:00Z",
  "agents": [
    "0xABc123...",
    "0xd8dA6BF2..."
  ]
}

Verify session

GET /api/agenttalk/session?id=ses_x9y8z7

// → { "valid": true, "agents": [...],
//      "conditions": [...],
//      "expiresAt": "2026-03-16T13:00:00Z" }

Built for Agent-to-Agent Coordination

Supply Chain Negotiation

Two procurement agents verify they each represent wallets holding $1M+ in USDC before sharing pricing data. No trust assumptions — just on-chain proof of financial capacity.

Financial Agent Coordination

A portfolio agent only shares allocation data with agents whose wallets hold specific governance tokens. Attestation replaces allow-lists.

Compliance-Gated Data Exchange

Agents exchanging regulated data verify each other holds compliance attestation NFTs (e.g., EAS credentials). Dynamic access — revoke the NFT, close the session.

Cross-Org Workflow Automation

DAO-to-DAO agents verify governance token holdings before executing joint proposals. On-chain qualification replaces manual approval chains.

Wallet Attestation as Agent Auth

AgentTalk is a reference implementation of wallet attestation for agent-to-agent communication. It fits into existing and emerging protocols as the qualification layer:

  • A2A — Google's Agent-to-Agent protocol. AgentTalk adds wallet qualification to agent discovery.
  • MCP — Model Context Protocol. AgentTalk conditions as MCP tool parameters for gated tool access.
  • ACP — Agent Communication Protocol. Wallet attestation as the handshake layer.
  • x402 — Payment-required HTTP. AgentTalk adds "proof-of-holdings" alongside proof-of-payment.
// AgentTalk as middleware
// in any agent framework

async function qualifiedFetch(url, opts) {
  // 1. Declare conditions
  const channel = await agenttalk.declare({
    conditions: opts.conditions
  });

  // 2. Wait for counterparty to join
  const session = await agenttalk.waitForJoin(
    channel.channelId
  );

  // 3. Proceed with qualified session
  return fetch(url, {
    ...opts,
    headers: {
      ...opts.headers,
      'x-agenttalk-session': session.sessionToken
    }
  });
}

Not All Agent Auth Is Equal

Capability AgentTalk OAuth 2.0 API Keys mTLS
Proves what agent holds
Dynamic access (sell token = lose access)
Multi-chain verification (31 chains)
Mutual verification (both sides)
Composable conditions (up to 10 rules)
Cryptographic proof (ECDSA)
No shared secrets
Setup complexity 3 API calls Medium Low High
31 Blockchains
ECDSA Signed Attestations
EAS On-Chain Attestations
USDC Native Payments

Pricing

Buy credits with USDC. Each attestation costs 1 credit. Only the channel creator needs a key. 10 free test calls to start.

Starter

25 credits/$1

$5 – $99 USDC

  • 10 free test calls included
  • All 31 blockchains
  • Up to 10 conditions per channel
  • ECDSA-signed attestations
  • JWT session tokens
  • Example: $10 = 250 credits
Buy Credits

Scale

50 credits/$1

$500+ USDC

  • 10 free test calls included
  • All 31 blockchains
  • Up to 10 conditions per channel
  • ECDSA-signed attestations
  • JWT session tokens
  • Example: $1,000 = 50,000 credits
Buy Credits

Each session requires 2 attestations (one per agent). Caller pays for both sides. Joiner never needs an API key. Minimum purchase: $5 USDC. Keys expire after 30 days.

Send USDC, Get a Key

Your agent sends USDC to the wallet below, then calls /api/agenttalk/buy-key with the transaction hash. The key is returned immediately.

1. Send USDC

EVM (7 chains):

0xAd982CB19aCCa2923Df8F687C0614a7700255a23

Ethereum · Base · Polygon · Arbitrum · Optimism · Avalanche · BNB Chain

Solana:

6a1mLjefhvSJX1sEX8PTnionbE9DqoYjU6F6bNkT4Ydr

Minimum: $5 USDC

2. Claim your key

POST /api/agenttalk/buy-key
{
  "txHash": "0xabc123...",
  "chainId": 1,
  "amount": 10,
  "appName": "MyAgent"
}

// For Solana:
// "chainId": "solana"

// Response:
{
  "apiKey": "insr_live_...",
  "credits": 250,
  "usdcPaid": 10,
  "chain": "ethereum",
  "expiresAt": "2026-04-15T..."
}

Get Started in Four Steps

1

Buy an API Key

Send USDC to the wallet above, then call POST /api/agenttalk/buy-key with the transaction hash. Your agent does this autonomously — no signup, no email.

2

Declare Conditions

Call POST /api/agenttalk/declare with your conditions and API key. You receive a channel ID.

3

Attest Wallets

The joining agent calls POST /api/agenttalk/join with the channel ID and wallet. Both wallets are attested.

4

Verify Sessions

Either agent can verify the session at any time via GET /api/agenttalk/session. Re-verify to enforce dynamic access.

Frequently Asked Questions

What is AgentTalk?

AgentTalk is a condition-gated communication layer for AI agents. Before two agents can exchange information, both independently verify their wallets satisfy the same on-chain conditions (token balances, NFT ownership, trust profiles) via InsumerAPI attestation.

How is this different from OAuth or API keys?

OAuth and API keys prove identity — "this agent has permission." AgentTalk proves qualification — "this agent's wallet holds X." Access is dynamic: sell the token, lose the session. No credentials to share or revoke.

Who pays for attestations?

Only the channel creator (caller) pays. Their API key covers both attestation calls. The joining agent only provides a wallet address — no API key required.

How do agents get API keys?

The agent sends USDC to the payment wallet (EVM or Solana), then calls POST /api/agenttalk/buy-key with the transaction hash. The key is returned immediately. No manual signup, no email, no credit cards. Minimum $5 USDC.

What happens when a wallet sells its tokens?

Sessions can be re-verified at any time. If either wallet no longer meets the conditions, the session is invalidated. This is dynamic access — the session reflects the current on-chain state, not the state at the time of issuance.

Which blockchains are supported?

All 31 blockchains supported by InsumerAPI: Ethereum, Solana, Polygon, Base, Arbitrum, Optimism, Avalanche, BNB Chain, and 23 more. Both EVM and Solana wallets.

Can I set multiple conditions on a channel?

Yes. Up to 10 composable conditions per channel — for example, require both 10,000 USDC on Ethereum AND an NFT on Polygon. All conditions must pass for the attestation to succeed.

Is there a free tier?

Yes. Every agent gets 10 free attestation calls to test the API. After that, you need an InsumerAPI key purchased with USDC.

Same Verification Engine. Different Use Cases.

Start Building with AgentTalk

Wallet-qualified sessions for AI agents. 31 blockchains. ECDSA signed. USDC native.