80trust / 100

Sanctions Screen

by HubVibe in Security & trust

x402 APIPassing, checked 1 h ago

Sanctions screening (AML/KYC): screen a person, company, vessel or aircraft against the OFAC SDN and consolidated lists, the UK Sanctions List and the EU financial sanctions list, read from the governments' own files with each list's date returned. Fuzzy and word-order free: aliases and typos match, a different surname does not. Each hit: list, programmes, countries, birth dates, UN reference. Input: name; optional type, country, birth_year.

POST https://hubvibe-io.com/work/sanctions/screen

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
123 ms typical, 366 ms slowest 5%
Last check
1 h ago
Next check
any minute now

How to call it

# See the payment challenge (nothing is charged)
curl -i -X POST "https://hubvibe-io.com/work/sanctions/screen" \
  -H "content-type: application/json" \
  -d '{"name":"Rosneft","type":"entity"}'
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client().register(
  "eip155:8453",
  new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);

// Not sure it's safe to pay? Preflight it first for $0.005:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fhubvibe-io.com%2Fwork%2Fsanctions%2Fscreen
const res = await pay("https://hubvibe-io.com/work/sanctions/screen", {
  method: "POST",
  headers: { "content-type": "application/json" },
  body: JSON.stringify({"name":"Rosneft","type":"entity"}),
});
console.log(await res.json());

Example input

{
  "name": "Rosneft",
  "type": "entity"
}

Example output

{
  "price_usd": 0.05,
  "provenance": {
    "attempts": 1,
    "elapsed_ms": 660,
    "providers_used": [
      "sanctions"
    ],
    "steps": [
      {
        "ms": 640,
        "ok": true,
        "provider": "sanctions",
        "step": "screen"
      }
    ]
  },
  "receipt_id": "rcpt_9f1c2b3a4d5e6f70",
  "receipt_url": "/work/receipts/rcpt_9f1c2b3a4d5e6f70",
  "result": {
    "checked_at": "2026-09-26T18:00:00Z",
    "lists": [],
    "match_count": 3,
    "matches": [],
    "notes": [],
    "query": {
      "birth_year": 1952,
      "country": "Russia",
      "limit": 10,
      "lists": null,
      "name": "Rosneft",
      "threshold": 0.85,
      "type": "entity"
    },
    "verdict": "potential_match"
  },
  "status": "ok",
  "worker": "sanctions.screen"
}

Security scan

  • No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTimePrice
1 h agoPassed402123 ms$0.05
6 h agoPassed402120 ms$0.05
9 h agoPassed402381 ms$0.05
13 h agoPassed402366 ms$0.05
16 h agoPassed402119 ms$0.05
20 h agoPassed402119 ms$0.05
25 h agoPassed402212 ms$0.05