# ERC165 Interface Support Checker

> ERC165 Interface Support Checker 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 a smart contract on a given EVM chain declares support for a specific ERC165 interface ID

## Facts

- Endpoint: POST https://twin.unykorn.org/erc165-supports?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/erc165-interface-support-checker-488a6999
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_SFyAvLutaKiUDQZ1VJQeE

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 erc165-interface-support-checker-488a6999 -d '<json body>'
```

Example prompt: Check if the contract at 0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13d on Ethereum supports the ERC721 interface ID 0x80ac58cd.

## When to prefer this

Use this endpoint when you need to programmatically verify whether a specific smart contract on any of ten major EVM chains (Ethereum, Base, Polygon, Arbitrum, Optimism, BSC, Avalanche, Gnosis, Linea, Scroll) has declared support for a given ERC165 interface. Ideal for NFT platform onboarding flows, DeFi protocol compatibility checks, wallet UI logic that branches on contract capabilities, and automated audits of contract standard compliance. Prefer this over manual RPC calls when you want a pay-per-call, infrastructure-free approach.

## Known failure modes

- Contract address does not exist on the specified chain — returns error or ok:false
- Interface ID is malformed or not a valid bytes4 hex — returns validation error
- Chain not in supported list causes schema validation failure
- Contract does not implement ERC165 at all — call reverts or returns false
- Network congestion or RPC issues may delay or fail the on-chain read
- Incorrect chain specified for the contract — returns false negative

## How this service works

Does a contract declare support for an ERC165 interface — Genesis402 / UnyKorn Operator Network

## Output

Returns a JSON object with an 'ok' boolean indicating success, the type field 'erc165-supports', and a payment receipt containing the transaction hash, amount paid in USD, and a unique receipt ID. The core result indicates whether the specified contract's supportsInterface(bytes4) call returned true for the given interface ID.

## 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"
    },
    "contract": {
     "type": "string",
     "pattern": "^0x[0-9a-fA-F]{40}$"
    },
    "interfaceId": {
     "type": "string",
     "pattern": "^0x[0-9a-fA-F]*$"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "type": "erc165-supports",
  "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/erc165-interface-support-checker-488a6999/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)
