# SignalHarness Polygon ERC20 Allowance Exposure Analyzer

> SignalHarness Polygon ERC20 Allowance Exposure Analyzer is a paid API for AI agents from signalharness.ai, paid per call via x402, $0.015/call, status unknown (last checked 2026-09-15).

Analyzes caller-supplied transaction evidence to identify and summarize ERC20 token approval/allowance exposures on the Polygon PoS network

## Facts

- Endpoint: POST https://signalharness.ai/api/agent/services/polygon_erc20_allowance_exposure/invoke
- Price: $0.015/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/signalharness-polygon-erc20-allowance-exposure-analyzer-6f0d3499
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_-YiFS8VKaxRwknExuBlOs

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 signalharness-polygon-erc20-allowance-exposure-analyzer-6f0d3499 -d '<json body>'
```

Example prompt: Analyze this Polygon transaction evidence for ERC20 allowance exposures — I need to know which spenders were approved, the before/after allowance amounts, and whether any unlimited approvals were granted: {paste transaction JSON here}.

## When to prefer this

Choose this endpoint when you need to analyze ERC20 allowance exposures on Polygon PoS from caller-supplied transaction evidence — such as logs, receipts, or decoded events — rather than querying live blockchain state. It is ideal for post-hoc auditing of approval events, security reviews of DeFi interactions, or agent workflows that already have transaction data and need structured allowance summaries without making additional RPC calls.

## Known failure modes

- Malformed or missing request_json causes parse failure
- Evidence JSON that does not contain recognizable ERC20 approval events returns empty approvals array
- Unsupported chain IDs (non-Polygon) may be rejected or produce incomplete results
- Overly large input JSON (>65536 characters) is rejected
- Service explicitly does not query live blockchain state — missing evidence yields no results

## How this service works

Explore 330 pay-per-call x402 API services and 27 agent-native digital products, with Base USDC pricing, secure Polar checkout, and free discovery.

## Output

Returns a structured JSON analysis including: a list of ERC20 approval events with owner, spender, token address, before/after allowance amounts, delta, and unlimited flag; a per-spender exposure summary aggregating total allowances; and network context including accepted chain IDs (Polygon mainnet 137 and testnet 80002), bridge model, and completion policy. Also includes the analyzed network ('polygon') and a note that the service does not query or revoke allowances — it only analyzes caller-supplied evidence.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "request_json": {
   "type": "string",
   "maxLength": 65536,
   "minLength": 2
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "replay": false,
  "result": {
   "warnings": [
    "Does not query or revoke allowances."
   ],
   "service_id": "polygon_erc20_allowance_exposure",
   "analysis_json": "{\"approvals\":[{\"after\":\"100\",\"before\":\"0\",\"delta\":\"100\",\"owner\":\"0x0000000000000000000000000000000000000001\",\"spender\":\"0x0000000000000000000000000000000000000002\",\"token\":\"0x0000000000000000000000000000000000000001\",\"unlimited\":false}],\"network_context\":{\"accepted_chain_ids\":[\"137\",\"80002\"],\"bridge_model\":\"root-child state sync plus checkpoint evidence\",\"completion_policy\":\"never inferred without supplied evidence\",\"protocol_family\":\"Polygon PoS\"},\"spender_exposure\":[{\"spender\":\"0x0000000000000000000000000000000000000002\",\"total_after\":\"100\",\"unlimited\":false}]}",
   "evidence_scope": "caller_supplied_data",
   "analyzed_network": "polygon"
  },
  "status": "succeeded",
  "receipt": {
   "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
   "usage": [],
   "status": "succeeded",
   "network": "eip155:8453",
   "artifacts": [],
   "endedAtMs": 0,
   "latencyMs": 0,
   "paymentId": "example-payment",
   "receiptId": "example-receipt",
   "requestId": "example-request",
   "serviceId": "polygon_erc20_allowance_exposure",
   "executionId": "example-execution",
   "startedAtMs": 0,
   "amountAtomic": "15000",
   "resultSha256": "ff633d2cd835b920b9b7eee2cf8c0beab8d24c21f7e85efbe500366840bffde0",
   "serviceVersion": "1.0.0",
   "settlementReference": "0x0000000000000000000000000000000000000000000000000000000000000000"
  },
  "artifacts": [],
  "requestId": "example-request",
  "executionId": "example-execution"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/signalharness-polygon-erc20-allowance-exposure-analyzer-6f0d3499/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from signalharness.ai](https://www.zero.xyz/host/signalharness.ai/llms.txt)
