17 on-chain compute primitives in one x402 API: keccak256, ABI encode/decode, function selectors, EIP-712 hashing + signature recovery/verification, merkle root/proof/verify, CREATE/CREATE2 address derivation, ENS namehash, checksum, unit conversion, RLP encode/decode. Pure computation, no data dependencies. 0.02 USDC per call on Base.
Pay from $0.02 per request in USDC on Base, settled onchain via the x402 protocol, no signup, no API key needed.
first settlement 2026-07-21 · $0.17 all-time · last settled 2026-07-24
ASSESSMENT
updated 2h agoEvidence-backed signals, not a single score. Click any chip for the proof. Measured values stay read-only; unknown is honest.
reliability 100%
- uptime 24h
- -
- uptime 7d
- -
- uptime 30d
- -
- uptime 90d
- -
- response p95
- 421ms
- avg response
- 421ms
- total checks
- 1
compliance A (11/11)
11 of 11 x402 conformance checks pass. Full checklist below.
price $0.02 (p75 in Blockchain)
- price (min)
- $0.02
- category percentile (min)
- p75 in Blockchain
- endpoints / prices
- 1 / 1
- model
- flat
- stability
- 100%
risk clean
No deterministic risk flag. Risk fires only on an exact blocklist match, or a reserved-brand name with a mismatched verified payTo. Never from low uptime, a high price, or a model guess.
- domain age
- 725d
- registrar
- CloudFlare, Inc.
- hosting
- custom
- domain created
- 2024-07-30
Identity facts, not a risk score.
traction $0 30d · 0 buyers
- volume 30d
- $0
- buyers 30d
- 0
- settlements 30d
- 0
- first settlement
- 2026-07-21
- last settlement
- 2026-07-24
- top buyer share
- -
- trend 7d vs 30d
- -
- networks
- eip155:8453
- volume all-time
- $0.17
- settlements all-time
- 3
- median settlement 30d
- $0
- max settlement 30d
- $0
- settled via
- -
Attributed pro-quota: this payout address is shared, so volume and buyers are the operator-level figure divided by the services sharing it. A declared convention, not an individually observed measure, and still a conservative undercount.
Currently sharing this payout address with chainfeed, jsonguard, x402 Agent-Commerce Starter + Platform Map.
Top buyer share is a concentration signal, not part of the ranking score.
WHAT IT DOES
ai-derivedProvides on-chain compute services including keccak256 hashing, ABI encoding/decoding, and various blockchain-specific cryptographic operations.
- category
- blockchain-compute
- in
- body
AI-generated summary. The measured data is never altered by it.
ENDPOINTS
| METHOD | PATH | DESCRIPTION | PRICE | NETWORK | ASSET |
|---|---|---|---|---|---|
| POST | /v1/crypto | On-chain compute: keccak256, ABI encode/decode, fn/event selectors, EIP-712 hashing, EIP-191/712 recovery, Merkle proofs, CREATE/CREATE2, ENS namehash, checksum, unit convert, RLP | $0.02 | Base | USDC |
REQUEST / RESPONSE EXAMPLE
An unpaid request to POST /v1/crypto returns HTTP 402 with the payment terms. Settle onchain via your facilitator, then retry with the X-Payment header.
curl -i -X POST 'https://chainkit.leeworks.dev/v1/crypto'
// 402 response (captured by monitor) · 1 payload · click to expand
[
{
"error": "payment required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"input": {
"method": "POST",
"schema": {
"type": "object",
"required": [
"op"
],
"properties": {
"op": {
"enum": [
"keccak256",
"abi_encode",
"abi_decode",
"selector",
"eip712_hash",
"recover",
"verify_712",
"merkle_root",
"merkle_proof",
"verify_merkle",
"create2",
"create_address",
"namehash",
"checksum",
"unit_convert",
"rlp_encode",
"rlp_decode"
],
"type": "string",
"description": "Operation to run; remaining fields depend on op"
},
"args": {
"type": "array",
"description": "abi_encode: arguments for the given signature"
},
"data": {
"type": "string",
"description": "keccak256: hex(0x…) hashed as bytes else UTF-8. abi_decode: calldata. rlp_*: hex or nested array"
},
"from": {
"type": "string",
"description": "create_address: deployer address"
},
"leaf": {
"description": "merkle_proof/verify_merkle: target leaf"
},
"name": {
"type": "string",
"description": "namehash: ENS name e.g. vitalik.eth"
},
"salt": {
"type": "string",
"description": "create2: 32-byte hex salt"
},
"nonce": {
"type": "integer",
"description": "create_address: deployer nonce"
},
"proof": {
"type": "array",
"description": "verify_merkle: hex proof"
},
"types": {
"type": "array",
"description": "abi_encode/abi_decode: raw ABI type list e.g. [\"address\",\"uint256\"]"
},
"value": {
"type": "object",
"description": "verify_712/eip712_hash: typed-data value"
},
"domain": {
"type": "object",
"description": "verify_712/eip712_hash: EIP-712 domain"
},
"leaves": {
"type": "array",
"description": "merkle_*: leaf values (keccak256, sorted pairs)"
},
"values": {
"type": "array",
"description": "abi_encode: values matching types"
},
"address": {
"type": "string",
"description": "checksum: address to checksum/validate"
},
"message": {
"type": "string",
"description": "recover: the personal_sign message"
},
"deployer": {
"type": "string",
"description": "create2: deployer address"
},
"initCode": {
"type": "string",
"description": "create2: init code (hashed) — or pass initCodeHash"
},
"signature": {
"type": "string",
"description": "recover/verify_712: 0x sig. abi_encode/abi_decode/selector: a fn/event sig e.g. transfer(address,uint256)"
},
"value_num": {
"description": "unit_convert: amount (use field 'value')"
}
}
},
"example": {
"op": "selector",
"signature": "transfer(address,uint256)"
},
"contentType": "application/json"
},
"output": {
"example": {
"ok": true,
"op": "selector",
"topic0": "0xa9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b",
"selector": "0xa9059cbb"
},
"contentType": "application/json",
"description": "Always {ok, op}; other fields depend on op (hash | data | values | selector/topic0 | digest | signer | root/proof | address | checksum | wei/result | rlp/decoded)"
},
"version": "2"
},
"payTo": "0xa8B061d96F69426f11bcC807BfA00f0AF79541a7",
"scheme": "exact",
"network": "base",
"mimeType": "application/json",
"resource": "https://chainkit.leeworks.dev/v1/crypto",
"description": "On-chain compute: keccak256, ABI encode/decode, fn/event selectors, EIP-712 hashing, EIP-191/712 recovery, Merkle proofs, CREATE/CREATE2, ENS namehash, checksum, unit convert, RLP",
"maxAmountRequired": "20000",
"maxTimeoutSeconds": 120
}
],
"x402Version": 1
}
] OVER TIME
All charts share the 30d window selected here. Every series is also served as JSON at /api/v1/services/chainkit/price, /scores, /volume and /buyers. On-chain volume and distinct buyers are measured over the service's settlement address and are a conservative undercount (only settlements that reach a measured facilitator are counted). The on-chain series roll up hourly, so the latest day can be up to about an hour behind; distinct buyers are counted per payout address, so a service that settles to more than one address is an upper bound.
Shared payout address (3 other services). These bars are the full shared address (operator-level), so do not sum them across the services that share it. Where a per-service figure is attributed, the assessment block and the ranking, it is the address total divided pro-quota by the 4 services sharing it: a declared convention, not an individually observed measure.
Shared payout address (3 other services). These bars are the full shared address (operator-level), so do not sum them across the services that share it. Where a per-service buyer count is attributed, the assessment block and the ranking, it is divided pro-quota by the 4 services sharing the address and can be fractional: a declared convention, not an individually observed measure.
COMPLIANCE
11/11 checks pass · grade A- 402 payload captured
- accepts[] array present
- payTo address recoverable
- payTo at accepts[0].payTo (conformant shape)
- payTo is a valid on-chain address
- atomic price declared
- atomic price in a sane range
- asset (token) address declared
- network resolves to CAIP-2
- payment scheme declared
- served over HTTPS
SITE PILLARS
- homepage reachable
- openapi doc
- pricing page
- llms.txt
- robots.txt
- terms page
recent checks (8) · click to expand
EMBED THIS BADGE
<a href="https://x402-list.com/services/chainkit?utm_source=badge&utm_medium=referral&utm_campaign=embed"> <img src="https://x402-list.com/badge/chainkit.svg" alt="chainkit listed on x402-list" height="28"> </a>
[](https://x402-list.com/services/chainkit?utm_source=badge&utm_medium=referral&utm_campaign=embed)
<a href="https://x402-list.com/services/chainkit?utm_source=badge&utm_medium=referral&utm_campaign=embed"> <img src="https://x402-list.com/badge/chainkit.svg?data=uptime" alt="chainkit uptime on x402-list" height="28"> </a>