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-elizaTwo 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 (up to 50 checks across 28 chains)
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 with up to 50 checks across 28 chains (stablecoins, governance tokens, NFTs, staking, institutional issuances). Optional cross-chain with Solana, XRPL, Bitcoin, Tron, Stellar, and Sui wallets.
User: "What's the trust profile for 0xd8dA...?"
Agent: [calls CHECK_TRUST → POST /v1/trust]
Trust Profile TRST-B2K4F
stablecoins: 15/27 passed
governance: 4/4 passed
nfts: 1/3 passed
staking: 1/3 passed
institutional_stablecoins: 0/8 passed
Overall: 21/45 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...: 21/45 checks passed (TRST-B2K4F)
0xAb58...: 14/45 checks passed (TRST-C3L5G)
0x1234...: 6/45 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.
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