Skip to content

Add InsumerAPI action provider for on-chain verification and trust profiles#978

Open
douglasborthwick-crypto wants to merge 1 commit intocoinbase:mainfrom
douglasborthwick-crypto:feat/insumer-action-provider
Open

Add InsumerAPI action provider for on-chain verification and trust profiles#978
douglasborthwick-crypto wants to merge 1 commit intocoinbase:mainfrom
douglasborthwick-crypto:feat/insumer-action-provider

Conversation

@douglasborthwick-crypto

Summary

Adds a walletless action provider for InsumerAPI — privacy-preserving on-chain wallet verification and trust profiling across 31 EVM chains and Solana.

  • 5 actions: verify_wallet, get_wallet_trust_profile, get_batch_wallet_trust_profiles, validate_discount_code, list_compliance_templates
  • Walletless: API-only provider (no wallet connection required), following the Messari/DefiLlama pattern
  • Multi-chain: Supports 31 EVM chains + Solana via a single API — supportsNetwork() returns true
  • Privacy-preserving: Returns ECDSA-signed boolean attestations, never raw wallet balances
  • 21 tests, all passing. Lint and TypeScript clean.

WISHLIST Alignment

This addresses the WISHLIST item for trust/verification capabilities. Key differentiators vs open PRs #961 and #963:

InsumerAPI (this PR) #961 / #963
Chains 31 EVM + Solana Base only
Wallet required No (walletless API) Yes (on-chain contract)
Privacy Boolean-only, never exposes balances On-chain, public
Condition types token_balance, nft_ownership, EAS, Farcaster Token-gating only
Trust profiles 17-check dimensional profiles N/A
Compliance Coinbase KYC, Gitcoin Passport templates N/A

Actions

Action Endpoint Auth Credits Description
verify_wallet POST /v1/attest API key 1 (2 merkle) Boolean attestation — does wallet meet conditions?
get_wallet_trust_profile POST /v1/trust API key 3 (6 merkle) 17-check trust profile across 4 dimensions
get_batch_wallet_trust_profiles POST /v1/trust/batch API key 3/wallet Batch up to 10 wallets, 5-8x faster
validate_discount_code GET /v1/codes/{code} None Free Validate INSR-XXXXX discount code
list_compliance_templates GET /v1/compliance/templates None Free List EAS compliance templates

Sample Agent Prompts

  • "Check if wallet 0xd8dA...96045 holds at least 1000 USDC on Ethereum"
  • "Get the trust profile for vitalik.eth"
  • "Compare trust profiles for these 5 wallets"
  • "Does this wallet have Coinbase KYC verification on Base?"
  • "What compliance templates are available?"

Files Changed

  • typescript/agentkit/src/action-providers/insumer/ — 7 new files (provider, tests, schemas, types, constants, index, README)
  • typescript/agentkit/src/action-providers/index.ts — added barrel export
  • typescript/.changeset/warm-wallets-verify.md — changeset

Test plan

  • All 21 unit tests pass (pnpm jest --testPathPattern=insumer)
  • Lint passes (pnpm run lint)
  • TypeScript compiles (tsc --noEmit)
  • Format passes (pnpm run format)
  • CI pipeline passes

🤖 Generated with Claude Code

@cb-heimdall
Copy link

cb-heimdall commented Feb 28, 2026

🟡 Heimdall Review Status

Requirement Status More Info
Reviews 🟡 0/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

@github-actions github-actions bot added documentation Improvements or additions to documentation action provider New action provider typescript labels Feb 28, 2026
…rust profiles

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

action provider New action provider documentation Improvements or additions to documentation typescript

Development

Successfully merging this pull request may close these issues.

2 participants