# OpenIntel Find Shared Holders for Tokens

> OpenIntel Find Shared Holders for Tokens is a paid API for AI agents from api.openintel.agency, paid per call via x402, $0.03/call, status unknown (last checked 2026-09-15).

Given a set of token addresses, returns wallet addresses that hold balances across all specified tokens, along with their per-token balances.

## Facts

- Endpoint: POST https://api.openintel.agency/api/v1/find_shared_holders_for_tokens
- Price: $0.03/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/openintel-find-shared-holders-for-tokens-e9437a05
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ZzXkjk1IFx0Wfz9ZoJQiG

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability openintel-find-shared-holders-for-tokens-e9437a05 -d '<json body>'
```

Example prompt: Find all wallet addresses that hold balances in both token 0x22aF33FE49fD1Fa80c7149773dDe5890D3c76F3b and 0x4200000000000000000000000000000000000006 — I want to see which wallets are holding both and how much of each they have.

## When to prefer this

Use this endpoint when you need to identify wallet addresses that simultaneously hold balances in multiple specific ERC-20 tokens — ideal for on-chain audience analysis, DeFi holder research, airdrop targeting, or identifying overlapping investor communities across token projects.

## Known failure modes

- Invalid or unrecognized token addresses return empty results or an error
- Payment failure via x402 protocol results in 402 response with no data
- Tokens with no shared holders return an empty results array
- Rate limiting or quota exceeded returns an error status
- Malformed request body (missing token list) returns a validation error

## How this service works

Pay-per-call proxy for the OpenIntel API.

## Output

A JSON object with a meta block (as_of timestamp, cache age in seconds) and a results array of wallet addresses, each containing their balances per requested token address.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "chain": {
   "type": "string",
   "minLength": 1
  },
  "limit": {
   "type": "integer",
   "maximum": 5000,
   "minimum": 1
  },
  "snapshot_at": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ]
  },
  "token_addresses": {
   "type": "array",
   "items": {
    "type": "string",
    "minLength": 1
   },
   "minItems": 2
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "meta": {
   "as_of": "2026-05-23T00:00:00Z",
   "cache_age_seconds": 0
  },
  "results": [
   {
    "as_of": "2026-05-23T00:00:00Z",
    "wallet_address": "0xabcdef0123456789abcdef0123456789abcdef01",
    "balances_per_token": [
     {
      "balance": 1234.5,
      "token_address": "0x22aF33FE49fD1Fa80c7149773dDe5890D3c76F3b"
     },
     {
      "balance": 2.1,
      "token_address": "0x4200000000000000000000000000000000000006"
     }
    ]
   }
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/openintel-find-shared-holders-for-tokens-e9437a05/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.openintel.agency](https://www.zero.xyz/host/api.openintel.agency/llms.txt)
