tanod-dev Txpeek API

txpeek, the pre-transaction check. Risk verdict for an address in about a second, before an agent sends a transaction, approves or buys.

Operations 1

POST /v1/check/address Check address risk: risk check of a wallet or contract address before sending… #

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/tanod-dev:tanod-dev-txpeek-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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

tanod-dev-txpeek-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Tanod Dev Txpeek API
  version: 0.1.0
  contact:
    name: Tanod
    email: ops@tanod.dev
    url: https://tanod.dev
  x-refined-note:
  - x-guidance differs across the merged source definitions and was not carried
  x-tanod-terms: https://tanod.dev/payments/terms.json
  description: 'Operations tagged txpeek across 2 of this provider''s published API definitions: chain.json, security.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://chain.tanod.dev
- url: https://security.tanod.dev
tags:
- name: txpeek
  description: txpeek, the pre-transaction check. Risk verdict for an address in about a second, before an agent sends a transaction, approves or buys.
paths:
  /v1/check/address:
    post:
      tags:
      - txpeek
      summary: 'Check address risk: risk check of a wallet or contract address before sending…'
      description: 'txpeek: pre-transaction risk check of an address on Base or Ethereum. Returns verdict (low | caution | high | unknown), risk_score 0-100 and plain-language reasons, e.g. upgradeable by a single key, unverified source, mint/blacklist/fee functions, SELFDESTRUCT or DELEGATECALL, an EOA where a contract was expected; plus proxy, token and verification details and the block it was checked at. Price: USD 0.005. Typically under 1 s (p95 about 1 s), at most about 4 s; results are cached for 10 min. If the chain cannot be read the call fails and is not charged. Heuristic, not an audit: the buy/sell (honeypot) simulation of ERC-20 tokens sees one trade now, there is no oracle analysis, and a low verdict is not a clearance.'
      operationId: check_address_risk
      requestBody:
        content:
          application/json:
            schema:
              properties:
                address:
                  type: string
                  pattern: ^0x[0-9a-fA-F]{40}$
                  title: Address
                  description: Address you are about to interact with.
                chain:
                  type: string
                  enum:
                  - base
                  - ethereum
                  title: Chain
                  description: Chain of the address.
              additionalProperties: false
              type: object
              required:
              - address
              - chain
              title: CheckRequest
              examples:
              - address: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
                chain: base
            example:
              address: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
              chain: base
        required: true
      responses:
        '200':
          description: 'Check result: verdict (low | caution | high | unknown), risk_score 0-100, reasons (code, severity, points, message), proxy, verification, capabilities, token, deep_scan, skipped, checked_at_block, latency_ms. See PRECHECK.md for the scoring table.'
          content:
            application/json:
              schema:
                properties:
                  schema:
                    type: string
                  ok:
                    type: boolean
                  chain:
                    type: string
                  address:
                    type: string
                  verdict:
                    type: string
                    enum:
                    - low
                    - caution
                    - high
                    - unknown
                  risk_score:
                    type: integer
                    maximum: 100.0
                    minimum: 0.0
                  reasons:
                    items:
                      properties:
                        code:
                          type: string
                        severity:
                          type: string
                        points:
                          type: integer
                        message:
                          type: string
                      type: object
                    type: array
                  checked_at_block:
                    type: integer
                  latency_ms:
                    type: integer
                  disclaimer:
                    type: string
                type: object
                required:
                - schema
                - ok
                - verdict
                - risk_score
                - reasons
              example:
                schema: precheck/1
                ok: true
                chain: base
                address: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913'
                verdict: high
                risk_score: 65
                reasons:
                - code: upgradeable_single_key
                  severity: high
                  points: 35
                  message: 'Upgradeable by a single key: the admin 0x... is an EOA and can change this contract''s code at any time.'
                checked_at_block: 36000000
                latency_ms: 1200
                disclaimer: Heuristic pre-check, not an audit. A low score does not guarantee safety.
        '402':
          description: 'Payment required (x402 v2, USDC; accepts[].network lists the networks offered, Base first). The PaymentRequired object is in the body and, base64, in the PAYMENT-REQUIRED header; accepts[].amount is in USDC atomic units (6 decimals). Also answered to an unpaid request whose input is missing or invalid: then the base price is quoted and `error` says what is wrong. A payment for a different amount than the input''s price is refused with a new 402 (error price_mismatch) and never settled. The free tier is opt-in over HTTP: an unpaid call without the header X-Tanod-Free: 1 gets this 402 and consumes nothing.'
          headers:
            PAYMENT-REQUIRED:
              description: base64 of the same x402 v2 PaymentRequired
              schema:
                type: string
          content:
            application/json:
              schema:
                properties:
                  x402Version:
                    type: integer
                    const: 2
                  error:
                    type: string
                  resource:
                    properties:
                      url:
                        type: string
                      description:
                        type: string
                      mimeType:
                        type: string
                      serviceName:
                        type: string
                      tags:
                        items:
                          type: string
                        type: array
                      iconUrl:
                        type: string
                    type: object
                  accepts:
                    items:
                      properties:
                        scheme:
                          type: string
                        network:
                          type: string
                        amount:
                          type: string
                          description: USDC atomic units (6 decimals)
                        asset:
                          type: string
                        payTo:
                          type: string
                        maxTimeoutSeconds:
                          type: integer
                        extra:
                          type: object
                      type: object
                    type: array
                  extensions:
                    type: object
                    description: 'extensions.bazaar: discovery metadata'
                type: object
                required:
                - x402Version
                - resource
                - accepts
                description: x402 v2 PaymentRequired (also base64 in the PAYMENT-REQUIRED header).
        '415':
          $ref: '#/components/responses/Response415_902d34495310'
        '429':
          $ref: '#/components/responses/Response429_b9393deecdf6'
        '422':
          description: 'With a payment attached: invalid address or chain (not charged).'
          content:
            application/json:
              schema:
                properties:
                  error:
                    type: object
                type: object
        '503':
          description: The chain could not be read in time, or the facilitator is unavailable (not charged); see Retry-After.
          content:
            application/json:
              schema:
                properties:
                  error:
                    type: object
                type: object
      security: []
      x-payment-info:
        price:
          mode: fixed
          currency: USD
          amount: '0.005000'
        protocols:
        - x402: {}
        - mpp:
            method: tempo
            intent: charge
            currency: '0x20C000000000000000000000b9537d11c60E8b50'
      x-tanod-pricing:
        product: txpeek
        service: Tanod txpeek
        scheme: exact
        network: eip155:8453
        asset: USDC
        payTo: '0x593857A4a4F619543ea12394137C3004ce841720'
        networks:
        - eip155:8453
        - eip155:137
        - solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp
        - eip155:56
        - eip155:42161
        circle_gateway: true
        prices_usd:
          check: '0.005'
        free_tier_per_ip_per_day: 30
        free_tier_header: 'X-Tanod-Free: 1'
    servers:
    - url: https://chain.tanod.dev
components:
  responses:
    Response415_902d34495310:
      description: 'Content-Type must be application/json (only when a payment is attached; unpaid: 402).'
      content:
        application/json:
          schema:
            properties:
              error:
                type: object
            type: object
    Response429_b9393deecdf6:
      description: Rate limited; see Retry-After.
      content:
        application/json:
          schema:
            properties:
              error:
                type: object
            type: object
x-refined-from:
- chain.json
- security.json
x-agentcash-guidance:
  llmsTxtUrl: https://agents.tanod.dev/llms.txt
x-tanod-family:
  family: agents
  mcp: https://tanod.dev/mcp/agents
  main: https://tanod.dev/openapi.json