Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: YourAITools Counterparty 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: CounterpartyCheck
paths:
/counterpartycheck/v1/lite:
get:
operationId: counterparty_lite
summary: 'Verdict (ok/caution/block) and reasons: OFAC SDN, ScamSniffer, x402 directory…'
tags:
- CounterpartyCheck
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: address
in: query
required: true
schema:
type: string
description: 'Counterparty address: EVM 0x + 40 hex, or a Solana base58 address'
- name: chain
in: query
required: false
schema:
type: string
enum:
- base
- ethereum
- polygon
- arbitrum
- solana
default: base
description: Chain of the payment (a base58 address implies solana)
- name: intent
in: query
required: false
schema:
type: string
enum:
- pay
- approve
- interact
default: pay
description: What you are about to do
responses:
'200':
description: Verdict (payment settled)
content:
application/json:
schema:
type: object
properties:
address:
type: string
chain:
type: string
intent:
type: string
tier:
type: string
verdict:
type: string
enum:
- ok
- caution
- block
confidence:
type: string
enum:
- high
- medium
- low
summary:
type: string
reasons:
type: array
items:
type: object
properties:
severity:
type: string
enum:
- danger
- warn
- info
- good
code:
type: string
text:
type: string
facts:
type: object
checks:
type: object
sources:
type: object
missing_data:
type: array
items:
type: string
limits:
type: array
items:
type: string
disclaimer:
type: string
checked_at:
type: string
format: date-time
'400':
description: Invalid address, chain or intent (never charged)
'402':
description: Payment Required (x402 v2 terms in the PAYMENT-REQUIRED header, v1 terms in the body)
'503':
description: Chain RPC unavailable (never charged)
description: 'Crypto address risk check API (pre-payment counterparty screening). Verdict (ok/caution/block) and reasons: OFAC SDN, ScamSniffer, x402 directory, labels, address type and activity ($0.005) Search intents: crypto address risk check, wallet risk score, scam address check, counterparty screening, ofac wallet check, pre payment check.'
post:
operationId: counterparty_lite_post
summary: 'Same as GET, POST {"address": "0x...", "chain": "base", "intent": "pay"}'
tags:
- CounterpartyCheck
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:
address:
type: string
chain:
type: string
enum:
- base
- ethereum
- polygon
- arbitrum
- solana
default: base
intent:
type: string
enum:
- pay
- approve
- interact
default: pay
required:
- address
responses:
'200':
description: Verdict (payment settled)
content:
application/json:
schema:
type: object
properties:
address:
type: string
chain:
type: string
intent:
type: string
tier:
type: string
verdict:
type: string
enum:
- ok
- caution
- block
confidence:
type: string
enum:
- high
- medium
- low
summary:
type: string
reasons:
type: array
items:
type: object
properties:
severity:
type: string
enum:
- danger
- warn
- info
- good
code:
type: string
text:
type: string
facts:
type: object
checks:
type: object
sources:
type: object
missing_data:
type: array
items:
type: string
limits:
type: array
items:
type: string
disclaimer:
type: string
checked_at:
type: string
format: date-time
'400':
description: Invalid address, chain or intent (never charged)
'402':
description: Payment Required (x402 v2 terms in the PAYMENT-REQUIRED header, v1 terms in the body)
'503':
description: Chain RPC unavailable (never charged)
description: 'Crypto address risk check API (pre-payment counterparty screening). Same as GET, POST {"address": "0x...", "chain": "base", "intent": "pay"}. Search intents: crypto address risk check, wallet risk score, scam address check, counterparty screening, ofac wallet check, pre payment check.'
/counterpartycheck/v1/quick:
get:
operationId: counterparty_quick
summary: Lite + contract verification and deployer, ENS / Basename, cross-chain…
tags:
- CounterpartyCheck
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: address
in: query
required: true
schema:
type: string
description: 'Counterparty address: EVM 0x + 40 hex, or a Solana base58 address'
- name: chain
in: query
required: false
schema:
type: string
enum:
- base
- ethereum
- polygon
- arbitrum
- solana
default: base
description: Chain of the payment (a base58 address implies solana)
- name: intent
in: query
required: false
schema:
type: string
enum:
- pay
- approve
- interact
default: pay
description: What you are about to do
responses:
'200':
description: Verdict (payment settled)
content:
application/json:
schema:
type: object
properties:
address:
type: string
chain:
type: string
intent:
type: string
tier:
type: string
verdict:
type: string
enum:
- ok
- caution
- block
confidence:
type: string
enum:
- high
- medium
- low
summary:
type: string
reasons:
type: array
items:
type: object
properties:
severity:
type: string
enum:
- danger
- warn
- info
- good
code:
type: string
text:
type: string
facts:
type: object
checks:
type: object
sources:
type: object
missing_data:
type: array
items:
type: string
limits:
type: array
items:
type: string
disclaimer:
type: string
checked_at:
type: string
format: date-time
'400':
description: Invalid address, chain or intent (never charged)
'402':
description: Payment Required (x402 v2 terms in the PAYMENT-REQUIRED header, v1 terms in the body)
'503':
description: Chain RPC unavailable (never charged)
description: 'Crypto counterparty due diligence API. Lite + contract verification and deployer, ENS / Basename, cross-chain presence, Safe / owner screening, explorer labels ($0.015) Search intents: wallet due diligence, contract verification check, ens lookup, address reputation, crypto kyt, counterparty report.'
post:
operationId: counterparty_quick_post
summary: 'Same as GET, POST {"address": "0x...", "chain": "base", "intent": "pay"}'
tags:
- CounterpartyCheck
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:
address:
type: string
chain:
type: string
enum:
- base
- ethereum
- polygon
- arbitrum
- solana
default: base
intent:
type: string
enum:
- pay
- approve
- interact
default: pay
required:
- address
responses:
'200':
description: Verdict (payment settled)
content:
application/json:
schema:
type: object
properties:
address:
type: string
chain:
type: string
intent:
type: string
tier:
type: string
verdict:
type: string
enum:
- ok
- caution
- block
confidence:
type: string
enum:
- high
- medium
- low
summary:
type: string
reasons:
type: array
items:
type: object
properties:
severity:
type: string
enum:
- danger
- warn
- info
- good
code:
type: string
text:
type: string
facts:
type: object
checks:
type: object
sources:
type: object
missing_data:
type: array
items:
type: string
limits:
type: array
items:
type: string
disclaimer:
type: string
checked_at:
type: string
format: date-time
'400':
description: Invalid address, chain or intent (never charged)
'402':
description: Payment Required (x402 v2 terms in the PAYMENT-REQUIRED header, v1 terms in the body)
'503':
description: Chain RPC unavailable (never charged)
description: 'Crypto counterparty due diligence API. Same as GET, POST {"address": "0x...", "chain": "base", "intent": "pay"}. Search intents: wallet due diligence, contract verification check, ens lookup, address reputation, crypto kyt, counterparty report.'
/counterpartycheck/v1/full:
get:
operationId: counterparty_full
summary: Quick + age, recent activity and exposure to listed addresses, recent…
tags:
- CounterpartyCheck
x-payment-info:
price:
mode: fixed
currency: USD
amount: '0.05'
protocols:
- x402: {}
x-x402:
scheme: exact
network: eip155:8453
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
amount: '50000'
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: address
in: query
required: true
schema:
type: string
description: 'Counterparty address: EVM 0x + 40 hex, or a Solana base58 address'
- name: chain
in: query
required: false
schema:
type: string
enum:
- base
- ethereum
- polygon
- arbitrum
- solana
default: base
description: Chain of the payment (a base58 address implies solana)
- name: intent
in: query
required: false
schema:
type: string
enum:
- pay
- approve
- interact
default: pay
description: What you are about to do
responses:
'200':
description: Verdict (payment settled)
content:
application/json:
schema:
type: object
properties:
address:
type: string
chain:
type: string
intent:
type: string
tier:
type: string
verdict:
type: string
enum:
- ok
- caution
- block
confidence:
type: string
enum:
- high
- medium
- low
summary:
type: string
reasons:
type: array
items:
type: object
properties:
severity:
type: string
enum:
- danger
- warn
- info
- good
code:
type: string
text:
type: string
facts:
type: object
checks:
type: object
sources:
type: object
missing_data:
type: array
items:
type: string
limits:
type: array
items:
type: string
disclaimer:
type: string
checked_at:
type: string
format: date-time
'400':
description: Invalid address, chain or intent (never charged)
'402':
description: Payment Required (x402 v2 terms in the PAYMENT-REQUIRED header, v1 terms in the body)
'503':
description: Chain RPC unavailable (never charged)
description: 'Full crypto counterparty due diligence API. Quick + age, recent activity and exposure to listed addresses, recent approvals, TokenVerdict for Base tokens ($0.05) Search intents: full wallet due diligence, address exposure check, drainer approvals check, wallet age, crypto risk report, counterparty aml.'
post:
operationId: counterparty_full_post
summary: 'Same as GET, POST {"address": "0x...", "chain": "base", "intent": "pay"}'
tags:
- CounterpartyCheck
x-payment-info:
price:
mode: fixed
currency: USD
amount: '0.05'
protocols:
- x402: {}
x-x402:
scheme: exact
network: eip155:8453
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
amount: '50000'
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:
address:
type: string
chain:
type: string
enum:
- base
- ethereum
- polygon
- arbitrum
- solana
default: base
intent:
type: string
enum:
- pay
- approve
- interact
default: pay
required:
- address
responses:
'200':
description: Verdict (payment settled)
content:
application/json:
schema:
type: object
properties:
address:
type: string
chain:
type: string
intent:
type: string
tier:
type: string
verdict:
type: string
enum:
- ok
- caution
- block
confidence:
type: string
enum:
- high
- medium
- low
summary:
type: string
reasons:
type: array
items:
type: object
properties:
severity:
type: string
enum:
- danger
- warn
- info
- good
code:
type: string
text:
type: string
facts:
type: object
checks:
type: object
sources:
type: object
missing_data:
type: array
items:
type: string
limits:
type: array
items:
type: string
disclaimer:
type: string
checked_at:
type: string
format: date-time
'400':
description: Invalid address, chain or intent (never charged)
'402':
description: Payment Required (x402 v2 terms in the PAYMENT-REQUIRED header, v1 terms in the body)
'503':
description: Chain RPC unavailable (never charged)
description: 'Full crypto counterparty due diligence API. Same as GET, POST {"address": "0x...", "chain": "base", "intent": "pay"}. Search intents: full wallet due diligence, address exposure check, drainer approvals check, wallet age, crypto risk report, counterparty aml.'
/counterpartycheck/v1/preview:
get:
operationId: counterparty_preview
summary: 'Free: verdict, confidence, address kind and flag counts (no reasons), 10/min…'
security: []
parameters:
- name: address
in: query
required: true
schema:
type: string
description: 'Counterparty address: EVM 0x + 40 hex, or a Solana base58 address'
- name: chain
in: query
required: false
schema:
type: string
enum:
- base
- ethereum
- polygon
- arbitrum
- solana
default: base
description: Chain of the payment (a base58 address implies solana)
- name: intent
in: query
required: false
schema:
type: string
enum:
- pay
- approve
- interact
default: pay
description: What you are about to do
responses:
'200':
description: OK
'400':
description: Invalid input
'429':
description: Free tier rate limit
tags:
- CounterpartyCheck
components:
securitySchemes:
creditsKey:
type: http
scheme: bearer
description: yatc_... credits key