# EIP-712 Typed Data Hash Calculator

> EIP-712 Typed Data Hash Calculator is a paid API for AI agents from api.x402node.dev, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-16).

Computes the exact EIP-712 typed-data hash, domain separator, and struct hash (keccak256 digest) used for Ethereum signature recovery

## Facts

- Endpoint: POST https://api.x402node.dev/crypto/eip712-hash
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-16
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/eip-712-typed-data-hash-calculator-89390ffc
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_b2cIv-5k5XEXpMaFnCstg

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 eip-712-typed-data-hash-calculator-89390ffc -d '<json body>'
```

Example prompt: Calculate the EIP-712 typed data hash for a permit signature — the domain is name 'MyToken', version '1', chainId 1, verifyingContract '0xAbC...', the primaryType is 'Permit', the types include Permit with fields owner, spender, value, nonce, deadline as address/address/uint256/uint256/uint256, and the message has owner '0x123...', spender '0x456...', value 1000000, nonce 0, deadline 1700000000 — I need the exact keccak256 digest, domain separator, and struct hash.

## When to prefer this

Use this endpoint when you need the precise EIP-712 keccak256 digest that an Ethereum wallet or smart contract would compute — especially critical when LLMs cannot reliably perform keccak256 arithmetic, when verifying signatures off-chain, when debugging EIP-712 signing flows, or when building permit/meta-transaction tooling that requires the exact domain separator and struct hash.

## Known failure modes

- Malformed or missing domain fields return a 400 error
- Invalid or inconsistent types definition causes a hash computation failure
- primaryType not found in types object returns an error
- Mismatched message fields vs declared types produce an error
- Network or payment authorization failure returns a 402 Payment Required

## How this service works

Compute the exact EIP-712 typed-data hash, domain separator and struct hash from domain, types, primaryType and message - the precise keccak256 digest used for signature recovery that LLMs cannot calculate. eip712 hash, typed data hash, eip-712, domain separator, struct hash, signature digest

## Output

Returns the computed EIP-712 hash (keccak256 digest ready for signature recovery), the domain separator hash, and the struct hash — the exact same values an Ethereum wallet computes internally when signing typed data.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "types": {
   "type": "string",
   "description": "Types object/JSON (required)"
  },
  "domain": {
   "type": "string",
   "description": "EIP-712 domain object/JSON (required)"
  },
  "message": {
   "type": "string",
   "description": "Message object/JSON (required)"
  },
  "primaryType": {
   "type": "string",
   "description": "Primary type name (required)"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/eip-712-typed-data-hash-calculator-89390ffc/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.x402node.dev](https://www.zero.xyz/host/api.x402node.dev/llms.txt)
