# Limitguard Seller Preflight

> Limitguard Seller Preflight is a paid API for AI agents from api.limitguard.ai, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-25).

Screens an x402 payment recipient's wallet and resource domain against OFAC, EU, and UN sanctions lists before an agent authorizes payment, returning ok/caution/block verdicts.

## Facts

- Endpoint: POST https://api.limitguard.ai/v1/seller/preflight?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-25
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/limitguard-seller-preflight-1dfd6c49
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_cf_fDgbIerolS6RNHAc-4

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability limitguard-seller-preflight-1dfd6c49 -d '<json body>'
```

Example prompt: Before paying this x402 API, run a Limitguard preflight check on wallet 0xAbC...123 and resource URL https://api.example.com/data to make sure the seller isn't on any OFAC, EU, or UN sanctions list.

## When to prefer this

Use this endpoint when an AI agent is about to authorize an x402 micropayment and needs a fast, multi-list compliance check covering both the payee wallet and the resource domain's registrant. It is specifically designed for the x402 payment flow and combines wallet-level OFAC SDN screening with RDAP-based domain owner sanctions checks in a single call, making it far more efficient than running separate wallet and entity screening endpoints before each payment.

## Known failure modes

- Invalid or non-EVM wallet address returns a validation error
- Non-public or non-DNS resource URL rejected
- RDAP lookup unavailable for certain TLDs or new domains
- Sanctions list API downtime may degrade or delay results
- Insufficient prepaid balance returns payment required error
- Malformed CAIP-2 network identifier causes input rejection

## How this service works

Preflight before an agent pays an x402 seller: screens the payTo wallet against the OFAC SDN address list, reads who registered the resource domain and when (RDAP), and screens that company against the OFAC, EU and UN lists. Returns ok, caution or block with one reason per finding.

## Output

A structured response containing a top-level verdict of 'ok', 'caution', or 'block', accompanied by one reason per finding. Findings cover: OFAC SDN digital-currency address match on the payTo wallet, RDAP lookup of the resource URL's registrant company and registration date, and sanctions screening of that company against OFAC, EU, and UN lists. Optionally includes a payee history comparison if a payer wallet is provided.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "note": {
   "type": "string"
  },
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "required": [
      "pay_to",
      "resource_url"
     ],
     "properties": {
      "payer": {
       "type": "string",
       "description": "Optional: your own paying wallet (EVM). Its previous USDC payees on Base are compared with pay_to"
      },
      "pay_to": {
       "type": "string",
       "description": "The payTo wallet of the x402 quote you are about to pay"
      },
      "network": {
       "type": "string",
       "description": "CAIP-2 network of the quote (default eip155:8453); eip155:* or solana:*"
      },
      "resource_url": {
       "type": "string",
       "description": "The https URL of the paid resource, on a public DNS name"
      }
     }
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST",
      "PUT",
      "PATCH"
     ],
     "type": "string"
    },
    "headers": {
     "type": "object",
     "additionalProperties": {
      "type": "string"
     }
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  },
  "sandbox": {
   "type": "object",
   "required": [
    "url"
   ],
   "properties": {
    "url": {
     "type": "string"
    },
    "curl": {
     "type": "string"
    },
    "note": {
     "type": "string"
    }
   }
  },
  "recovery": {
   "type": "object",
   "required": [
    "url"
   ],
   "properties": {
    "url": {
     "type": "string"
    },
    "curl": {
     "type": "string"
    }
   }
  },
  "prepaidBalance": {
   "type": "object",
   "required": [
    "balance_usd",
    "price_usd"
   ],
   "properties": {
    "note": {
     "type": "string"
    },
    "topup": {
     "type": "object",
     "required": [
      "url"
     ],
     "properties": {
      "url": {
       "type": "string"
      },
      "curl": {
       "type": "string"
      },
      "minimum_usd": {
       "type"
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/limitguard-seller-preflight-1dfd6c49/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.limitguard.ai](https://www.zero.xyz/host/api.limitguard.ai/llms.txt)
