YourAITools Leak Guard API

The LeakGuard API from YourAITools — 3 operation(s) for leakguard.

GitHub OpenAPI

Operations 6

GET /leakguard/v1/lite Find and redact secrets, wallet keys and PII in text (<= 32 KB): verdict… #
POST /leakguard/v1/lite Same as GET; POST {"text": "..."} or a text/plain body #
GET /leakguard/v1/scan Deep scan of text or JSON (<= 256 KB): findings by JSON path, redacted JSON… #
POST /leakguard/v1/scan Same as GET; POST {"text": "..."} or {"json": {...}} or a text/plain body #
GET /leakguard/v1/preview Free: verdict, safe_to_send, max severity and counts by type (no positions or… #
POST /leakguard/v1/preview Free preview, POST {"text": "..."} or text/plain #

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-leakguard-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-leakguard-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: YourAITools Leak Guard 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: LeakGuard
paths:
  /leakguard/v1/lite:
    get:
      operationId: leak_scan_lite
      summary: 'Find and redact secrets, wallet keys and PII in text (<= 32 KB): verdict…'
      tags:
      - LeakGuard
      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: text
        in: query
        required: true
        schema:
          type: string
          maxLength: 8192
        description: Text to check (prefer POST for anything sensitive or long)
      - name: style
        in: query
        required: false
        schema:
          type: string
          enum:
          - label
          - mask
        description: 'label: [REDACTED:type] (default); mask: keep last 4 digits / email domain for PII'
      - name: types
        in: query
        required: false
        schema:
          type: string
        description: Comma-separated finding types or categories (wallet_key, secret, pii, email, ...)
      - name: min_severity
        in: query
        required: false
        schema:
          type: string
          enum:
          - low
          - medium
          - high
          - critical
      responses:
        '200':
          description: Scan result (payment settled)
          content:
            application/json:
              schema:
                type: object
                properties:
                  verdict:
                    type: string
                    enum:
                    - WALLET_KEY_EXPOSED
                    - SECRETS_FOUND
                    - PII_FOUND
                    - CLEAN
                  safe_to_send:
                    type: boolean
                  max_severity:
                    type: string
                  confidence:
                    type: string
                    enum:
                    - high
                    - medium
                    - low
                  counts:
                    type: object
                  findings:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        category:
                          type: string
                          enum:
                          - wallet_key
                          - secret
                          - pii
                        severity:
                          type: string
                          enum:
                          - low
                          - medium
                          - high
                          - critical
                        confidence:
                          type: number
                        validator:
                          type: string
                        start:
                          type: integer
                        end:
                          type: integer
                        preview:
                          type: string
                          description: masked; never the secret
                        path:
                          type: string
                          description: JSON path (scan, json input)
                        remediation:
                          type: string
                  redacted:
                    type: string
                  redacted_json:
                    description: 'scan with json input: same shape, secrets replaced'
                  exposure:
                    type: object
                    description: 'scan: status funds_at_risk | unknown | used_empty | no_funds_found | not_checked | not_applicable; addresses[] with balances per chain'
                  actions:
                    type: array
                    items:
                      type: string
                  sources_failed:
                    type: array
                    items:
                      type: string
                  engine:
                    type: string
                  checked_at:
                    type: string
                    format: date-time
        '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: Input larger than the tier limit (never charged)
        '503':
          description: checks_incomplete (never charged)
      description: 'Secret and PII detection API (redact before sending to an LLM). Find and redact secrets, wallet keys and PII in text (<= 32 KB): verdict, findings with masked previews and remediation, redacted text ($0.005) Search intents: secret detection api, pii redaction, api key leak scanner, seed phrase detection, data loss prevention api, redact text for llm.'
    post:
      operationId: leak_scan_lite_post
      summary: 'Same as GET; POST {"text": "..."} or a text/plain body'
      tags:
      - LeakGuard
      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:
                text:
                  type: string
                style:
                  type: string
                  enum:
                  - label
                  - mask
                types:
                  type: array
                  items:
                    type: string
                min_severity:
                  type: string
                  enum:
                  - low
                  - medium
                  - high
                  - critical
              required:
              - text
          text/plain:
            schema:
              type: string
      responses:
        '200':
          description: Scan result (payment settled)
          content:
            application/json:
              schema:
                type: object
                properties:
                  verdict:
                    type: string
                    enum:
                    - WALLET_KEY_EXPOSED
                    - SECRETS_FOUND
                    - PII_FOUND
                    - CLEAN
                  safe_to_send:
                    type: boolean
                  max_severity:
                    type: string
                  confidence:
                    type: string
                    enum:
                    - high
                    - medium
                    - low
                  counts:
                    type: object
                  findings:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        category:
                          type: string
                          enum:
                          - wallet_key
                          - secret
                          - pii
                        severity:
                          type: string
                          enum:
                          - low
                          - medium
                          - high
                          - critical
                        confidence:
                          type: number
                        validator:
                          type: string
                        start:
                          type: integer
                        end:
                          type: integer
                        preview:
                          type: string
                          description: masked; never the secret
                        path:
                          type: string
                          description: JSON path (scan, json input)
                        remediation:
                          type: string
                  redacted:
                    type: string
                  redacted_json:
                    description: 'scan with json input: same shape, secrets replaced'
                  exposure:
                    type: object
                    description: 'scan: status funds_at_risk | unknown | used_empty | no_funds_found | not_checked | not_applicable; addresses[] with balances per chain'
                  actions:
                    type: array
                    items:
                      type: string
                  sources_failed:
                    type: array
                    items:
                      type: string
                  engine:
                    type: string
                  checked_at:
                    type: string
                    format: date-time
        '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: Input larger than the tier limit (never charged)
        '503':
          description: checks_incomplete (never charged)
      description: 'Secret and PII detection API (redact before sending to an LLM). Same as GET; POST {"text": "..."} or a text/plain body. Search intents: secret detection api, pii redaction, api key leak scanner, seed phrase detection, data loss prevention api, redact text for llm.'
  /leakguard/v1/scan:
    get:
      operationId: leak_scan_deep
      summary: 'Deep scan of text or JSON (<= 256 KB): findings by JSON path, redacted JSON…'
      tags:
      - LeakGuard
      x-payment-info:
        price:
          mode: fixed
          currency: USD
          amount: '0.02'
        protocols:
        - x402: {}
      x-x402:
        scheme: exact
        network: eip155:8453
        asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
        payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
        amount: '20000'
        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: text
        in: query
        required: true
        schema:
          type: string
          maxLength: 8192
        description: Text to check (prefer POST for anything sensitive or long)
      - name: style
        in: query
        required: false
        schema:
          type: string
          enum:
          - label
          - mask
        description: 'label: [REDACTED:type] (default); mask: keep last 4 digits / email domain for PII'
      - name: types
        in: query
        required: false
        schema:
          type: string
        description: Comma-separated finding types or categories (wallet_key, secret, pii, email, ...)
      - name: min_severity
        in: query
        required: false
        schema:
          type: string
          enum:
          - low
          - medium
          - high
          - critical
      responses:
        '200':
          description: Scan result (payment settled)
          content:
            application/json:
              schema:
                type: object
                properties:
                  verdict:
                    type: string
                    enum:
                    - WALLET_KEY_EXPOSED
                    - SECRETS_FOUND
                    - PII_FOUND
                    - CLEAN
                  safe_to_send:
                    type: boolean
                  max_severity:
                    type: string
                  confidence:
                    type: string
                    enum:
                    - high
                    - medium
                    - low
                  counts:
                    type: object
                  findings:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        category:
                          type: string
                          enum:
                          - wallet_key
                          - secret
                          - pii
                        severity:
                          type: string
                          enum:
                          - low
                          - medium
                          - high
                          - critical
                        confidence:
                          type: number
                        validator:
                          type: string
                        start:
                          type: integer
                        end:
                          type: integer
                        preview:
                          type: string
                          description: masked; never the secret
                        path:
                          type: string
                          description: JSON path (scan, json input)
                        remediation:
                          type: string
                  redacted:
                    type: string
                  redacted_json:
                    description: 'scan with json input: same shape, secrets replaced'
                  exposure:
                    type: object
                    description: 'scan: status funds_at_risk | unknown | used_empty | no_funds_found | not_checked | not_applicable; addresses[] with balances per chain'
                  actions:
                    type: array
                    items:
                      type: string
                  sources_failed:
                    type: array
                    items:
                      type: string
                  engine:
                    type: string
                  checked_at:
                    type: string
                    format: date-time
        '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: Input larger than the tier limit (never charged)
        '503':
          description: checks_incomplete (never charged)
      description: 'Deep secret and PII leak scan API for text and JSON. Deep scan of text or JSON (<= 256 KB): findings by JSON path, redacted JSON, leaked-wallet exposure (derived addresses + native/USDC balances on Base, Ethereum, Polygon, Arbitrum One, Solana), ordered actions ($0.02) Search intents: secret scanning api, json pii scan, leaked private key check, credential leak detection, dlp api, redact json.'
    post:
      operationId: leak_scan_deep_post
      summary: 'Same as GET; POST {"text": "..."} or {"json": {...}} or a text/plain body'
      tags:
      - LeakGuard
      x-payment-info:
        price:
          mode: fixed
          currency: USD
          amount: '0.02'
        protocols:
        - x402: {}
      x-x402:
        scheme: exact
        network: eip155:8453
        asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
        payTo: '0x3c1A1E01e790Cd326495631B3b38Bd7068F08d6F'
        amount: '20000'
        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:
                text:
                  type: string
                json:
                  description: Any JSON payload (object, array or value); scanned string by string, keys included
                style:
                  type: string
                  enum:
                  - label
                  - mask
                types:
                  type: array
                  items:
                    type: string
                min_severity:
                  type: string
                  enum:
                  - low
                  - medium
                  - high
                  - critical
              oneOf:
              - required:
                - text
              - required:
                - json
          text/plain:
            schema:
              type: string
      responses:
        '200':
          description: Scan result (payment settled)
          content:
            application/json:
              schema:
                type: object
                properties:
                  verdict:
                    type: string
                    enum:
                    - WALLET_KEY_EXPOSED
                    - SECRETS_FOUND
                    - PII_FOUND
                    - CLEAN
                  safe_to_send:
                    type: boolean
                  max_severity:
                    type: string
                  confidence:
                    type: string
                    enum:
                    - high
                    - medium
                    - low
                  counts:
                    type: object
                  findings:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        category:
                          type: string
                          enum:
                          - wallet_key
                          - secret
                          - pii
                        severity:
                          type: string
                          enum:
                          - low
                          - medium
                          - high
                          - critical
                        confidence:
                          type: number
                        validator:
                          type: string
                        start:
                          type: integer
                        end:
                          type: integer
                        preview:
                          type: string
                          description: masked; never the secret
                        path:
                          type: string
                          description: JSON path (scan, json input)
                        remediation:
                          type: string
                  redacted:
                    type: string
                  redacted_json:
                    description: 'scan with json input: same shape, secrets replaced'
                  exposure:
                    type: object
                    description: 'scan: status funds_at_risk | unknown | used_empty | no_funds_found | not_checked | not_applicable; addresses[] with balances per chain'
                  actions:
                    type: array
                    items:
                      type: string
                  sources_failed:
                    type: array
                    items:
                      type: string
                  engine:
                    type: string
                  checked_at:
                    type: string
                    format: date-time
        '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: Input larger than the tier limit (never charged)
        '503':
          description: checks_incomplete (never charged)
      description: 'Deep secret and PII leak scan API for text and JSON. Same as GET; POST {"text": "..."} or {"json": {...}} or a text/plain body. Search intents: secret scanning api, json pii scan, leaked private key check, credential leak detection, dlp api, redact json.'
  /leakguard/v1/preview:
    get:
      operationId: leak_scan_preview
      summary: 'Free: verdict, safe_to_send, max severity and counts by type (no positions or…'
      security: []
      parameters:
      - name: text
        in: query
        required: true
        schema:
          type: string
          maxLength: 8192
        description: Text to check (prefer POST for anything sensitive or long)
      responses:
        '200':
          description: verdict, safe_to_send, max_severity, counts
        '400':
          description: Invalid input
        '413':
          description: Text over 8 KB
        '429':
          description: Free tier rate limit
      tags:
      - LeakGuard
    post:
      operationId: leak_scan_preview_post
      summary: 'Free preview, POST {"text": "..."} or text/plain'
      security: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                text:
                  type: string
                style:
                  type: string
                  enum:
                  - label
                  - mask
                types:
                  type: array
                  items:
                    type: string
                min_severity:
                  type: string
                  enum:
                  - low
                  - medium
                  - high
                  - critical
              required:
              - text
          text/plain:
            schema:
              type: string
      responses:
        '200':
          description: verdict, safe_to_send, max_severity, counts
        '400':
          description: Invalid input
        '413':
          description: Text over 8 KB
        '429':
          description: Free tier rate limit
      tags:
      - LeakGuard
components:
  securitySchemes:
    creditsKey:
      type: http
      scheme: bearer
      description: yatc_... credits key