ElizaOS plugin for InsumerAPI: 10 actions for condition-based access across 37 blockchains.
An agent can go from zero to running a condition-based commerce operation with no human involvement: provision an API key with USDC, create a merchant, configure which tokens gate access, add credits, verify wallets, run ACP/UCP commerce flows, and confirm payments — all autonomously.
npm install @insumermodel/plugin-elizaWorks with @elizaos/core 1.7 and later, and with 2.x. On a 2.0 pre-release (alpha or beta) build, npm does not match the peer range, so install with npm install @insumermodel/plugin-eliza --legacy-peer-deps.
Two paths. Both return an insr_live_... key instantly with 100 reads/day and 10 verification credits. One free key per email.
curl -s -X POST https://api.insumermodel.com/v1/keys/create \
-H "Content-Type: application/json" \
-d '{"email": "you@example.com", "appName": "ElizaOS Agent", "tier": "free"}' | jq .Or enter your email on insumermodel.com — the key appears inline. Already have a key? Manage it at insumermodel.com/developers/account/.
{
"plugins": ["@insumermodel/plugin-eliza"],
"settings": {
"secrets": {
"INSUMER_API_KEY": "insr_live_your_key_here"
}
}
}Or set the environment variable:
export INSUMER_API_KEY=insr_live_your_key_hereThe 10 actions cover the complete agent lifecycle — no human required at any step:
BUY_API_KEY → Provision API key with USDC/USDT/BTC (no auth needed)
CREATE_MERCHANT → Create merchant profile (100 free credits)
CONFIGURE_TOKENS → Set which tokens gate discounts + tier thresholds
ADD_CREDITS → Top up merchant credits with USDC
VERIFY_WALLET → Verify token/NFT/attestation conditions (1-10 per call)
CHECK_TRUST → Generate wallet trust profile (145 base checks across 27 chains, up to 166 across 29)
CHECK_TRUST_BATCH → Profile up to 10 wallets in one call
ACP_DISCOUNT → Check discount in OpenAI/Stripe ACP format
UCP_DISCOUNT → Check discount in Google UCP format
CONFIRM_PAYMENT → Confirm on-chain USDC payment for discount code
Buy a new InsumerAPI key with USDC, USDT, or BTC. No existing API key required — the sender wallet from the transaction becomes the key's identity. One key per wallet.
User: "I sent 10 USDC on Base, tx 0xabc123. Create an API key called TrustBot."
Agent: [calls BUY_API_KEY → POST /v1/keys/buy]
API key created successfully!
Key: insr_live_...
Name: TrustBot
Credits: 250
Wallet: 0x...
Create a new merchant. The agent's API key owns the merchant. Receives 100 free verification credits.
User: "Create a merchant called Acme Coffee with ID acme-coffee in New York."
Agent: [calls CREATE_MERCHANT → POST /v1/merchants]
Merchant created successfully!
ID: acme-coffee
Name: Acme Coffee
Credits: 100 (free starter credits)
Configure which tokens gate access to merchant discounts. Up to 8 tokens with 1-4 discount tiers each. Supports EVM chains (Ethereum, Base, Polygon, Arbitrum, Optimism, and more) plus Solana and XRPL.
User: "Set up USDC gating for acme-coffee: Bronze at 100 (5%), Silver at 1000 (10%), Gold at 10000 (15%) on Ethereum."
Agent: [calls CONFIGURE_TOKENS → PUT /v1/merchants/{id}/tokens]
Token tiers configured for acme-coffee!
Total tokens: 1/8
Buy merchant verification credits with USDC, USDT, or BTC. Credits are consumed by discount code generation.
User: "I sent 20 USDC on Base (tx 0xabc123) to top up credits for acme-coffee."
Agent: [calls ADD_CREDITS → POST /v1/merchants/{id}/credits]
Credits added to acme-coffee!
Credits added: 500
Total credits: 600
USDC paid: 20
Chain: Base
Verify 1-10 on-chain conditions (token balances, NFT ownership, EAS attestations, Farcaster identity, evm_view_call boolean view functions, ratio_to_amount for self-scaling agent-spend limits and ratio_to_supply for share-of-supply rules (all three EVM only), plus erc8004_agent and erc7710_delegation agent-standing checks on Base) across 37 chains. Returns ECDSA-signed boolean results.
User: "Check if 0xd8dA... holds at least 100 UNI"
Agent: [calls VERIFY_WALLET → POST /v1/attest]
Attestation ATST-A7C3E1B2D4F56789: PASS
[+] UNI balance >= 100 (chain 1)
1 passed, 0 failed
Generate a structured wallet trust profile: 145 base checks across 27 chains in 9 dimensions (stablecoins, governance tokens, NFTs, staking, institutional stablecoins, tokenized treasuries, stablecoin deposits, wrapped bitcoin, names), up to 166 checks across 29 chains in 13 dimensions with optional Solana, XRPL, Bitcoin, and Tron wallets. Stellar and Sui wallets switch on rows inside the base dimensions. Every check is a presence check; the signed conditionSetVersion (currently 2026-10) names the check list that was run.
User: "What's the trust profile for 0xd8dA...?"
Agent: [calls CHECK_TRUST → POST /v1/trust]
Trust Profile TRST-B2K4F
stablecoins: 15/52 passed
governance: 4/8 passed
nfts: 1/3 passed
staking: 1/5 passed
institutional_stablecoins: 0/8 passed
tokenized_treasuries: 0/16 passed
stablecoin_deposits: 3/39 passed
wrapped_bitcoin: 1/12 passed
names: 1/2 passed
Overall: 26/145 checks passed
Profile up to 10 wallets in a single request. 5-8x faster than sequential calls via shared block fetches.
User: "Check trust for these wallets: 0xd8dA..., 0xAb58..., 0x1234..."
Agent: [calls CHECK_TRUST_BATCH → POST /v1/trust/batch]
Batch Trust: 3 profiles
0xd8dA...: 26/145 checks passed (TRST-B2K4F)
0xAb58...: 14/145 checks passed (TRST-C3L5G)
0x1234...: 6/145 checks passed (TRST-D4M6H)
Check discount eligibility in OpenAI/Stripe Agentic Commerce Protocol format. Returns coupon objects, allocations, and a signed verification code. Costs 1 merchant credit.
User: "Check ACP discount for 0xd8dA... at merchant acme-coffee."
Agent: [calls ACP_DISCOUNT → POST /v1/acp/discount]
ACP Discount Result
Verification code: INSR-A7K3M
Discount: 10%
Check discount eligibility in Google Universal Commerce Protocol format. Returns title-based discounts and a signed verification code. Costs 1 merchant credit.
User: "Check UCP discount for 0xd8dA... at merchant acme-coffee."
Agent: [calls UCP_DISCOUNT → POST /v1/ucp/discount]
UCP Discount Result
Verification code: INSR-B8L4N
Discount: 10%
Confirm that a USDC payment was made on-chain for a discount code. Verifies the transaction receipt to ensure USDC arrived at the merchant address.
User: "Confirm payment for code INSR-A7K3M. I sent 25 USDC on Base, tx 0xdef456."
Agent: [calls CONFIRM_PAYMENT → POST /v1/payment/confirm]
Payment confirmed!
Code: INSR-A7K3M
Amount verified: 25 USDC
Chain: Base
The VERIFY_WALLET action supports format: "jwt" when the user requests a JWT or bearer token. The response includes a standard ES256-signed JWT alongside the attestation, verifiable by any JWT library via the JWKS endpoint at GET /v1/jwks, and beside it a pqJwt sibling (a compact JWS with alg ML-DSA-65 carrying the same claims). Use the jwt for direct API gateway integration (Kong, Nginx, Cloudflare Access, AWS API Gateway).
VERIFY_WALLET, CHECK_TRUST, and CHECK_TRUST_BATCH return the full API envelope in the action result's data. The callback text summarises pass/fail; the signature travels in data:
{
"attestation": { "id": "ATST-A7C3E1B2D4F56789", "pass": true, "results": [ ... ], "attestedAt": "2026-09-02T12:34:57.000Z", "expiresAt": "2026-09-02T13:04:57.000Z" },
"sig": "NgA7BO8SAildiTrgIQY2UyXsBrySZknkP85pT2Zqv8Hq0KsCsB8DRFVMkXgnXtCXrbb726Is6k4LyyBYU+f/Pw==",
"kid": "insumer-attest-v2",
"pqSig": "<base64 ML-DSA-65 signature>",
"pqKid": "insumer-attest-pq1"
}sig is an ECDSA P-256 signature (base64, P1363 r||s) and kid selects the signed preimage (insumer-attest-v2 signs the domain-tagged canonical JSON; insumer-attest-v1 signs bare insertion-order JSON). Since 2026-09-01 every attest and trust response also carries an ML-DSA-65 post-quantum companion, pqSig and pqKid (trust profiles use insumer-trust-pq1), added beside sig and kid without changing them. The JWKS at https://insumermodel.com/.well-known/jwks.json holds five entries over two keys: the EC key under three kids, then the post-quantum key under two RFC 9964 AKP entries. Match by kid or pqKid, never by position. npm install insumer-verify (1.8.1+) verifies the envelope and reports five verdicts: signature, condition hash, freshness, expiry, and the post-quantum companion. The insumer-verify package runs every check; it is on npm for Node and on PyPI for Python under the same name.
Automatically detects wallet addresses (EVM, Solana, XRPL, Bitcoin, Tron, Stellar, Sui) in conversation and signals that verification actions are available. Dynamic — only activates when wallet patterns are found.
If the API cannot reach one or more data sources after retries, actions return ok: false with error code rpc_failure. No signature, no JWT, no credits charged. This is a retryable error — the agent should retry after 2-5 seconds.
Important: rpc_failure is NOT a verification failure. Do not treat it as pass: false. It means the data source was temporarily unavailable and the API refused to sign an unverified result.
31 EVM chains + Solana + XRP Ledger + Bitcoin + Tron + Stellar + Sui. Includes Ethereum, Base, Polygon, Arbitrum, Optimism, BNB Chain, Avalanche, XDC, Robinhood Chain, Arc, and 21 more EVM chains. Full list →
Tiers: Free (100 reads/day, 10 credits) | Pro $29/mo (1,000 credits/mo, 10,000/day) | Enterprise $99/mo (5,000 credits/mo, 100,000/day)
Volume discounts: $5–$99 = $0.04/call (25 credits/$1) · $100–$499 = $0.03 (33/$1, 25% off) · $500+ = $0.02 (50/$1, 50% off)
Platform wallets:
- EVM (USDC/USDT):
0xAd982CB19aCCa2923Df8F687C0614a7700255a23 - Solana (USDC/USDT):
6a1mLjefhvSJX1sEX8PTnionbE9DqoYjU6F6bNkT4Ydr - Bitcoin:
bc1qg7qnerdhlmdn899zemtez5tcx2a2snc0dt9dt0
Supported payment chains: Ethereum, Base, Polygon, Arbitrum, Optimism, BNB Chain, Avalanche, Solana, Bitcoin, Tron (USDT-TRC20). Tokens sent on unsupported chains cannot be recovered. All purchases are final and non-refundable. Full pricing →
- Claude Code Skill:
smithery skill add douglasborthwick/insumer-skill(Smithery · GitHub) — for writing wallet auth into your own projects from inside Claude Code - MCP Server:
npx -y mcp-server-insumer(npm) — for runtime agent access to the API - LangChain:
pip install langchain-insumer(PyPI) - OpenAI GPT: InsumerAPI Wallet Auth (GPT Store)
MIT