YourAITools Sign Check API
The SignCheck API from YourAITools — 3 operation(s) for signcheck.
The SignCheck API from YourAITools — 3 operation(s) for signcheck.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/youraitools-co:youraitools-co-signcheck-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: YourAITools Sign Check API
version: 1.0.0
description: Pay-per-call tools for AI agents, paid per request in USDC via x402 on Base, Polygon, Arbitrum One or Solana, with each tool's own spec at https://api.youraitools.co//openapi.json.
contact:
email: hello@youraitools.co
url: https://youraitools.co/built-by-us
servers:
- url: https://api.youraitools.co
tags:
- name: SignCheck
paths:
/signcheck/v1/check:
post:
operationId: check_signature
summary: Is it safe to sign or send this? Verdict, reasons, on-chain facts and simulation
tags:
- SignCheck
x-payment-info:
price:
mode: fixed
currency: USD
amount: '0.015'
protocols:
- x402: {}
x-x402:
scheme: exact
network: eip155:8453
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
amount: '15000'
assetSymbol: USDC
x402Versions:
- 2
- 1
networks:
- network: eip155:8453
name: Base
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: eip155:137
name: Polygon
asset: '0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: eip155:42161
name: Arbitrum One
asset: '0xaf88d065e77c8cC2239327C5EDb3A432268e5831'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
name: Solana
asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
symbol: USDC
payTo: FH73WbbUe2UyNzfy72MJs5nT3NxyDf9GrqE7kzjL2Jte
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
chain:
type: string
description: base (default), ethereum, base-sepolia or a numeric chain id
tx:
type: object
properties:
to:
type: string
data:
type: string
value:
type: string
from:
type: string
required:
- to
typed_data:
type: object
description: EIP-712 {domain, types, primaryType, message}
authorization:
type: object
description: EIP-7702 {address, chainId, nonce}
payment_required:
oneOf:
- type: object
- type: string
description: x402 PAYMENT-REQUIRED header (base64) or {accepts:[…]}
payment_payload:
oneOf:
- type: object
- type: string
description: x402 PAYMENT-SIGNATURE / X-PAYMENT (base64) or JSON
responses:
'200':
description: Check result (payment settled)
content:
application/json:
schema:
type: object
properties:
tier:
type: string
verdict:
type: string
enum:
- SAFE
- CAUTION
- DANGER
risk_score:
type: integer
minimum: 0
maximum: 100
kind:
type: string
enum:
- transaction
- typed_data
- eip7702_authorization
- x402_payment
action:
type: string
summary:
type: string
chain:
type: object
properties:
id:
type: integer
name:
type: string
flags:
type: array
items:
type: object
properties:
code:
type: string
severity:
type: string
enum:
- critical
- high
- medium
- low
- info
message:
type: string
counterparties:
type: array
items:
type: object
properties:
address:
type: string
roles:
type: array
items:
type: string
label:
type:
- string
- 'null'
type:
type: string
enum:
- eoa
- contract
- eip7702_delegated_eoa
sanctioned:
type: object
decoded:
type: array
x402:
type: object
onchain:
type: object
properties:
available:
type: boolean
block:
type:
- integer
- 'null'
tokens:
type: array
simulation:
type:
- object
- 'null'
selector_names:
type:
- object
- 'null'
sanctions:
type: object
engine:
type: string
checked_at:
type: string
format: date-time
disclaimer:
type: string
'400':
description: Invalid input (never charged)
'402':
description: Payment Required (x402 v2 terms in the PAYMENT-REQUIRED header, v1 terms in the body)
'413':
description: Body too large (never charged)
'503':
description: Chain RPC unavailable (never charged)
'504':
description: Timed out (never charged)
description: 'Transaction and signature safety check API for crypto wallets. Is it safe to sign or send this? Verdict, reasons, on-chain facts and simulation. Search intents: transaction simulation api, signature safety check, permit phishing detection, eip712 decoder, wallet drainer check, pre sign check.'
get:
operationId: check_signature_get
summary: Same as POST, inputs as query parameters
tags:
- SignCheck
x-payment-info:
price:
mode: fixed
currency: USD
amount: '0.015'
protocols:
- x402: {}
x-x402:
scheme: exact
network: eip155:8453
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
amount: '15000'
assetSymbol: USDC
x402Versions:
- 2
- 1
networks:
- network: eip155:8453
name: Base
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: eip155:137
name: Polygon
asset: '0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: eip155:42161
name: Arbitrum One
asset: '0xaf88d065e77c8cC2239327C5EDb3A432268e5831'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
name: Solana
asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
symbol: USDC
payTo: FH73WbbUe2UyNzfy72MJs5nT3NxyDf9GrqE7kzjL2Jte
parameters:
- name: to
in: query
required: false
schema:
type: string
description: tx.to (or use POST for typed data / x402)
- name: data
in: query
required: false
schema:
type: string
description: tx.data, 0x hex
- name: value
in: query
required: false
schema:
type: string
description: tx.value in wei
- name: from
in: query
required: false
schema:
type: string
description: tx.from (enables simulation)
- name: chain
in: query
required: false
schema:
type: string
description: base | ethereum | base-sepolia | chain id
- name: typed_data
in: query
required: false
schema:
type: string
description: EIP-712 JSON (URL-encoded)
- name: payment_required
in: query
required: false
schema:
type: string
description: x402 PAYMENT-REQUIRED header value
- name: payment_payload
in: query
required: false
schema:
type: string
description: x402 PAYMENT-SIGNATURE header value
responses:
'200':
description: Check result (payment settled)
content:
application/json:
schema:
type: object
properties:
tier:
type: string
verdict:
type: string
enum:
- SAFE
- CAUTION
- DANGER
risk_score:
type: integer
minimum: 0
maximum: 100
kind:
type: string
enum:
- transaction
- typed_data
- eip7702_authorization
- x402_payment
action:
type: string
summary:
type: string
chain:
type: object
properties:
id:
type: integer
name:
type: string
flags:
type: array
items:
type: object
properties:
code:
type: string
severity:
type: string
enum:
- critical
- high
- medium
- low
- info
message:
type: string
counterparties:
type: array
items:
type: object
properties:
address:
type: string
roles:
type: array
items:
type: string
label:
type:
- string
- 'null'
type:
type: string
enum:
- eoa
- contract
- eip7702_delegated_eoa
sanctioned:
type: object
decoded:
type: array
x402:
type: object
onchain:
type: object
properties:
available:
type: boolean
block:
type:
- integer
- 'null'
tokens:
type: array
simulation:
type:
- object
- 'null'
selector_names:
type:
- object
- 'null'
sanctions:
type: object
engine:
type: string
checked_at:
type: string
format: date-time
disclaimer:
type: string
'400':
description: Invalid input (never charged)
'402':
description: Payment Required (x402 v2 terms in the PAYMENT-REQUIRED header, v1 terms in the body)
'413':
description: Body too large (never charged)
'503':
description: Chain RPC unavailable (never charged)
'504':
description: Timed out (never charged)
description: 'Transaction and signature safety check API for crypto wallets. Same as POST, inputs as query parameters. Search intents: transaction simulation api, signature safety check, permit phishing detection, eip712 decoder, wallet drainer check, pre sign check.'
/signcheck/v1/lite:
post:
operationId: check_signature_lite
summary: 'Offline check ($0.005): verdict, every flag with its reason, decoded args…'
tags:
- SignCheck
x-payment-info:
price:
mode: fixed
currency: USD
amount: '0.005'
protocols:
- x402: {}
x-x402:
scheme: exact
network: eip155:8453
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
amount: '5000'
assetSymbol: USDC
x402Versions:
- 2
- 1
networks:
- network: eip155:8453
name: Base
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: eip155:137
name: Polygon
asset: '0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: eip155:42161
name: Arbitrum One
asset: '0xaf88d065e77c8cC2239327C5EDb3A432268e5831'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
name: Solana
asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
symbol: USDC
payTo: FH73WbbUe2UyNzfy72MJs5nT3NxyDf9GrqE7kzjL2Jte
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
chain:
type: string
description: base (default), ethereum, base-sepolia or a numeric chain id
tx:
type: object
properties:
to:
type: string
data:
type: string
value:
type: string
from:
type: string
required:
- to
typed_data:
type: object
description: EIP-712 {domain, types, primaryType, message}
authorization:
type: object
description: EIP-7702 {address, chainId, nonce}
payment_required:
oneOf:
- type: object
- type: string
description: x402 PAYMENT-REQUIRED header (base64) or {accepts:[…]}
payment_payload:
oneOf:
- type: object
- type: string
description: x402 PAYMENT-SIGNATURE / X-PAYMENT (base64) or JSON
responses:
'200':
description: Check result (payment settled)
content:
application/json:
schema:
type: object
properties:
tier:
type: string
verdict:
type: string
enum:
- SAFE
- CAUTION
- DANGER
risk_score:
type: integer
minimum: 0
maximum: 100
kind:
type: string
enum:
- transaction
- typed_data
- eip7702_authorization
- x402_payment
action:
type: string
summary:
type: string
chain:
type: object
properties:
id:
type: integer
name:
type: string
flags:
type: array
items:
type: object
properties:
code:
type: string
severity:
type: string
enum:
- critical
- high
- medium
- low
- info
message:
type: string
counterparties:
type: array
items:
type: object
properties:
address:
type: string
roles:
type: array
items:
type: string
label:
type:
- string
- 'null'
type:
type: string
enum:
- eoa
- contract
- eip7702_delegated_eoa
sanctioned:
type: object
decoded:
type: array
x402:
type: object
onchain:
type: object
properties:
available:
type: boolean
block:
type:
- integer
- 'null'
tokens:
type: array
simulation:
type:
- object
- 'null'
selector_names:
type:
- object
- 'null'
sanctions:
type: object
engine:
type: string
checked_at:
type: string
format: date-time
disclaimer:
type: string
'400':
description: Invalid input (never charged)
'402':
description: Payment Required (x402 v2 terms in the PAYMENT-REQUIRED header, v1 terms in the body)
'413':
description: Body too large (never charged)
'503':
description: Chain RPC unavailable (never charged)
'504':
description: Timed out (never charged)
description: 'Offline transaction and signature safety check API for crypto wallets. Offline check ($0.005): verdict, every flag with its reason, decoded args, counterparties, x402 payment-vs-402 match, OFAC SDN; no RPC. Search intents: decode transaction, signature risk check, permit2 decoder, eip712 safety, wallet security api, approve risk check.'
get:
operationId: check_signature_lite_get
summary: Same as POST /v1/lite, inputs as query parameters
tags:
- SignCheck
x-payment-info:
price:
mode: fixed
currency: USD
amount: '0.005'
protocols:
- x402: {}
x-x402:
scheme: exact
network: eip155:8453
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
amount: '5000'
assetSymbol: USDC
x402Versions:
- 2
- 1
networks:
- network: eip155:8453
name: Base
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: eip155:137
name: Polygon
asset: '0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: eip155:42161
name: Arbitrum One
asset: '0xaf88d065e77c8cC2239327C5EDb3A432268e5831'
symbol: USDC
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
- network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
name: Solana
asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
symbol: USDC
payTo: FH73WbbUe2UyNzfy72MJs5nT3NxyDf9GrqE7kzjL2Jte
parameters:
- name: to
in: query
required: false
schema:
type: string
description: tx.to (or use POST for typed data / x402)
- name: data
in: query
required: false
schema:
type: string
description: tx.data, 0x hex
- name: value
in: query
required: false
schema:
type: string
description: tx.value in wei
- name: from
in: query
required: false
schema:
type: string
description: tx.from (enables simulation)
- name: chain
in: query
required: false
schema:
type: string
description: base | ethereum | base-sepolia | chain id
- name: typed_data
in: query
required: false
schema:
type: string
description: EIP-712 JSON (URL-encoded)
- name: payment_required
in: query
required: false
schema:
type: string
description: x402 PAYMENT-REQUIRED header value
- name: payment_payload
in: query
required: false
schema:
type: string
description: x402 PAYMENT-SIGNATURE header value
responses:
'200':
description: Check result (payment settled)
content:
application/json:
schema:
type: object
properties:
tier:
type: string
verdict:
type: string
enum:
- SAFE
- CAUTION
- DANGER
risk_score:
type: integer
minimum: 0
maximum: 100
kind:
type: string
enum:
- transaction
- typed_data
- eip7702_authorization
- x402_payment
action:
type: string
summary:
type: string
chain:
type: object
properties:
id:
type: integer
name:
type: string
flags:
type: array
items:
type: object
properties:
code:
type: string
severity:
type: string
enum:
- critical
- high
- medium
- low
- info
message:
type: string
counterparties:
type: array
items:
type: object
properties:
address:
type: string
roles:
type: array
items:
type: string
label:
type:
- string
- 'null'
type:
type: string
enum:
- eoa
- contract
- eip7702_delegated_eoa
sanctioned:
type: object
decoded:
type: array
x402:
type: object
onchain:
type: object
properties:
available:
type: boolean
block:
type:
- integer
- 'null'
tokens:
type: array
simulation:
type:
- object
- 'null'
selector_names:
type:
- object
- 'null'
sanctions:
type: object
engine:
type: string
checked_at:
type: string
format: date-time
disclaimer:
type: string
'400':
description: Invalid input (never charged)
'402':
description: Payment Required (x402 v2 terms in the PAYMENT-REQUIRED header, v1 terms in the body)
'413':
description: Body too large (never charged)
'503':
description: Chain RPC unavailable (never charged)
'504':
description: Timed out (never charged)
description: 'Offline transaction and signature safety check API for crypto wallets. Same as POST /v1/lite, inputs as query parameters. Search intents: decode transaction, signature risk check, permit2 decoder, eip712 safety, wallet security api, approve risk check.'
/signcheck/v1/preview:
post:
operationId: preview_signature
summary: 'Free: offline verdict, summary and flag codes (10/min/IP)'
security: []
responses:
'200':
description: OK
'400':
description: Invalid input
'429':
description: Free tier rate limit
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
chain:
type: string
description: base (default), ethereum, base-sepolia or a numeric chain id
tx:
type: object
properties:
to:
type: string
data:
type: string
value:
type: string
from:
type: string
required:
- to
typed_data:
type: object
description: EIP-712 {domain, types, primaryType, message}
authorization:
type: object
description: EIP-7702 {address, chainId, nonce}
payment_required:
oneOf:
- type: object
- type: string
description: x402 PAYMENT-REQUIRED header (base64) or {accepts:[…]}
payment_payload:
oneOf:
- type: object
- type: string
description: x402 PAYMENT-SIGNATURE / X-PAYMENT (base64) or JSON
tags:
- SignCheck
get:
operationId: preview_signature_get
summary: 'Free: same as POST, query parameters'
security: []
responses:
'200':
description: OK
'400':
description: Invalid input
'429':
description: Free tier rate limit
parameters:
- name: to
in: query
required: false
schema:
type: string
description: tx.to (or use POST for typed data / x402)
- name: data
in: query
required: false
schema:
type: string
description: tx.data, 0x hex
- name: value
in: query
required: false
schema:
type: string
description: tx.value in wei
- name: from
in: query
required: false
schema:
type: string
description: tx.from (enables simulation)
- name: chain
in: query
required: false
schema:
type: string
description: base | ethereum | base-sepolia | chain id
- name: typed_data
in: query
required: false
schema:
type: string
description: EIP-712 JSON (URL-encoded)
- name: payment_required
in: query
required: false
schema:
type: string
description: x402 PAYMENT-REQUIRED header value
- name: payment_payload
in: query
required: false
schema:
type: string
description: x402 PAYMENT-SIGNATURE header value
tags:
- SignCheck
components:
securitySchemes:
creditsKey:
type: http
scheme: bearer
description: yatc_... credits key