YourAITools Sign Check API

The SignCheck API from YourAITools — 3 operation(s) for signcheck.

GitHub OpenAPI

Operations 6

POST /signcheck/v1/check Is it safe to sign or send this? Verdict, reasons, on-chain facts and simulation #
GET /signcheck/v1/check Same as POST, inputs as query parameters #
POST /signcheck/v1/lite Offline check ($0.005): verdict, every flag with its reason, decoded args… #
GET /signcheck/v1/lite Same as POST /v1/lite, inputs as query parameters #
POST /signcheck/v1/preview Free: offline verdict, summary and flag codes (10/min/IP) #
GET /signcheck/v1/preview Free: same as POST, query parameters #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/youraitools-co:youraitools-co-signcheck-api"
All apis
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.

Get an API 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 Specification

youraitools-co-signcheck-api-openapi.yml Raw ↑
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