# OFAC SDN Sanctions Screening

> OFAC SDN Sanctions Screening is a paid API for AI agents from x402-bazaar-rank.x402-bazaar-rank-worker.workers.dev, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-12).

Screens a crypto wallet address or entity name against the OFAC Specially Designated Nationals (SDN) sanctions list, returning match status, match type, and matched entity details.

## Facts

- Endpoint: GET https://x402-bazaar-rank.x402-bazaar-rank-worker.workers.dev/sanctions/check?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-12
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/ofac-sdn-sanctions-screening-30f22f83
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_xRPCOuMpsmf7vTpPmND2p

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 ofac-sdn-sanctions-screening-30f22f83
```

Example prompt: Can you check if the Ethereum address 0x098B716B8Aaf21512996dC57EB0615e2383E2f96 is on the OFAC SDN sanctions list before I send any funds to it?

## When to prefer this

Use this endpoint when you need fast, programmatic OFAC SDN sanctions screening of crypto addresses or entity names as part of a compliance workflow, pre-transaction check, or onboarding gate. Prefer this over manual OFAC lookups when operating in an automated agent context where you need structured JSON output with match confidence scores. Note: this covers only the OFAC SDN list — if you need multi-jurisdiction or non-SDN consolidated list coverage, look for a broader compliance API.

## Known failure modes

- Missing both 'name' and 'address' parameters — at least one is required
- Name query shorter than 3 characters or containing non-Latin characters may return no results
- min_score below 0.5 or above 1.0 is rejected
- limit exceeds 25 hits is rejected
- Stale index if indexAgeHours is high — screening is against a snapshot, not real-time OFAC feed
- No match does not legally clear a party — only SDN list is checked, not OFAC consolidated or other countries' lists

## How this service works

An open index of the machine-to-machine (agent) economy. x402 routes: ranked discovery over the live x402 service market, every indexed service scored by real 30-day calls and paying-wallet bounds, with a receipt naming the snapshot hash and scoring revision. /economy routes, for Tempo MPP, Virtuals ACP, Olas, Masumi, ERC-8004 agent registries, Solana agent registries, Base agent contracts and MCP servers (Official MCP Registry): each protocol's published figures (agent or server counts, transactions or payment events; payers and USD volume only where the source publishes them: payers for x402 and Tempo MPP, USD volume for x402 and Virtuals ACP), each with its unit, window and source; units differ, so totals are not summed. L402 and per-service MPP listings are not covered.

## Output

Returns a JSON object indicating whether the queried address or name matched an OFAC SDN entry, including: match boolean, matchType (e.g. exact_address, fuzzy_name), list name and date, checkedAt timestamp, source URL, and an array of hits each containing the entity uid, name, type, associated blockchain address, similarity score, and sanctioned programs (e.g. DPRK3). Also includes a disclaimer note and index freshness in hours.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [],
     "properties": {
      "name": {
       "type": "string",
       "maxLength": 200,
       "description": "person or entity name in Latin letters (transliterated), at least one word of 3+ characters (send this or address)"
      },
      "limit": {
       "type": "integer",
       "default": 10,
       "maximum": 25,
       "minimum": 1,
       "description": "name matches only: max hits"
      },
      "address": {
       "type": "string",
       "description": "crypto address to screen (send this or name)"
      },
      "min_score": {
       "type": "number",
       "default": 0.85,
       "maximum": 1,
       "minimum": 0.5,
       "description": "name matches only: lowest similarity score to report"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "query",
      "list",
      "listDate",
      "checkedAt",
      "screened",
      "match",
      "matchType",
      "hits",
      "method",
      "note",
      "source"
     ],
     "properties": {
      "hits": {
       "type": "array",
       "items": {
        "type": "object",
        "required": [
         "uid",
         "name",
         "type",
         "programs"
        ],
        "properties": {
         "uid": {
          "type": "integer"
         },
         "name": {
          "type": "string"
         },
         "type": {
          "type": "string"
         },
         "chain": {
          "type": "string"
         },
         "score": {
          "type": "number"
         },
         "address": {
          "type": "string"
         },
         "programs": {
          "type": "array",
          "items": {
           "type": "string"
          }
         },
         "matchedOn": {
          "type": "string"
         },
         "matchedVariant": {
          "type": "string"
         }
        }
       }
      },
      "list": {
       "t
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "hits": [
   {
    "uid": 27307,
    "name": "LAZARUS GROUP",
    "type": "Entity",
    "chain": "ETH",
    "address": "0x098b716b8aaf21512996dc57eb0615e2383e2f96",
    "programs": [
     "DPRK3"
    ]
   }
  ],
  "list": "OFAC SDN",
  "note": "Screening against the OFAC SDN list as of 2026-10-02, not legal advice. Only the SDN list is checked (not OFAC's non-SDN Consolidated lists or other countries' lists). A possible name match needs human review, and no match does not mean a party is cleared. Not affiliated with or endorsed by OFAC or the U.S. Department of the Treasury.",
  "match": true,
  "query": {
   "type": "address",
   "address": "0x098B716B8Aaf21512996dC57EB0615e2383E2f96",
   "normalized": "0x098b716b8aaf21512996dc57eb0615e2383e2f96"
  },
  "method": "Exact match of the address against Digital Currency Address entries in the SDN list (0x and bech32 addresses compared case-insensitively, base58 addresses case-sensitively).",
  "source": "OFAC Specially Designated Nationals and Blocked Persons List (SDN), U.S. Department of the Treasury",
  "listDate": "2026-10-02",
  "screened": true,
  "checkedAt": "2026-10-05T13:00:00Z",
  "matchType": "exact_address",
  "sourceUrl": "https://www.treasury.gov/ofac/downloads/sdn.xml",
  "listInfoUrl": "https://ofac.treasury.gov/sanctions-list-service",
  "indexAgeHours": 0.5
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/ofac-sdn-sanctions-screening-30f22f83/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-bazaar-rank.x402-bazaar-rank-worker.workers.dev](https://www.zero.xyz/host/x402-bazaar-rank.x402-bazaar-rank-worker.workers.dev/llms.txt)
