# ERC-721 isApprovedForAll Check

> ERC-721 isApprovedForAll Check is a paid API for AI agents from twin.unykorn.org, paid per call via x402, $0.003/call, status unknown (last checked 2026-10-01).

Checks whether an owner has granted an operator full approval over their entire ERC-721 NFT collection on a specified EVM chain

## Facts

- Endpoint: POST https://twin.unykorn.org/erc721-approved-for-all?utm_source=zero.xyz
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-01
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/erc-721-isapprovedforall-check-305dd0f4
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_WXQP3yxxUrxz6F3lY0jCp

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 erc-721-isapprovedforall-check-305dd0f4 -d '<json body>'
```

Example prompt: Check whether the operator address 0xAbC...123 has been granted full approval over the entire NFT collection at contract 0xDef...456 for owner 0x789...abc on the Ethereum mainnet.

## When to prefer this

Use this endpoint when you need a fast, pay-per-call check of ERC-721 isApprovedForAll status across 10 major EVM chains without running your own RPC infrastructure. Ideal for agents auditing wallet permissions, DeFi protocols verifying collection approvals before transactions, or security tools scanning for over-permissioned NFT operators. Prefer this over rolling your own eth_call when multi-chain support and a structured receipt-based audit trail are needed.

## Known failure modes

- Invalid Ethereum address format for owner, contract, or operator returns a validation error
- Unsupported chain name returns an enum validation error
- RPC node unavailability for the requested chain causes a timeout or 503
- Contract address is not an ERC-721 contract, which may return an unexpected response or revert
- Payment failure via x402 protocol prevents the call from being processed

## How this service works

Has an owner granted an operator control of their whole collection — Genesis402 / UnyKorn Operator Network

## Output

Returns a JSON object indicating whether the approval is granted (ok: true), the check type ('erc721-approved-for-all'), a payment receipt with tx_hash, amount in USD, and a unique receipt ID, plus a generated_at ISO8601 timestamp.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "params": {
   "type": "object",
   "properties": {
    "chain": {
     "enum": [
      "ethereum",
      "base",
      "polygon",
      "arbitrum",
      "optimism",
      "bsc",
      "avalanche",
      "gnosis",
      "linea",
      "scroll"
     ],
     "type": "string"
    },
    "owner": {
     "type": "string",
     "pattern": "^0x[0-9a-fA-F]{40}$"
    },
    "contract": {
     "type": "string",
     "pattern": "^0x[0-9a-fA-F]{40}$"
    },
    "operator": {
     "type": "string",
     "pattern": "^0x[0-9a-fA-F]{40}$"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "type": "erc721-approved-for-all",
  "receipt": {
   "tx_hash": "0x<64hex>",
   "amount_usd": 0.003,
   "receipt_id": "g402-<16hex>"
  },
  "generated_at": "<iso8601>"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/erc-721-isapprovedforall-check-305dd0f4/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from twin.unykorn.org](https://www.zero.xyz/host/twin.unykorn.org/llms.txt)
