80trust / 100

Scan

by api.x402lint.dev in Weather & location

x402 APIPassing, checked 25 min ago

Paid ($0.05). ALWAYS runs a fresh 25-check scan of the origin (non-settling GET/HEAD + benign empty-POST probes), bypassing the 24h cache — use free GET /v1/report to read the cached result. Concurrent requests for the same origin join the in-flight scan rather than double-scanning. Returns grade, score, per-check status + evidence + fix instructions, and a shareable report URL. Unreachable/broken origins are a valid graded result (F). 504 processing responses and errors are never charged.

POST https://api.x402lint.dev/v1/scan

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
467 ms typical, 486 ms slowest 5%
Last check
25 min ago
Next check
in 7 min

How to call it

# See the payment challenge (nothing is charged)
curl -i -X POST "https://api.x402lint.dev/v1/scan" \
  -H "content-type: application/json" \
  -d '{"url":"example"}'
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%2Fapi.x402lint.dev%2Fv1%2Fscan
const res = await pay("https://api.x402lint.dev/v1/scan", {
  method: "POST",
  headers: { "content-type": "application/json" },
  body: JSON.stringify({"url":"example"}),
});
console.log(await res.json());

Example input

{
  "url": "example"
}

Example output

{
  "cache": "miss",
  "checksVersion": "2026-08-14.2",
  "grade": "B",
  "origin": "https://api.example.dev",
  "reportUrl": "https://x402lint.dev/o/api.example.dev",
  "results": [
    {
      "evidence": "GET /v1/thing bare probe → 402 with x402Version=2",
      "id": "P2",
      "severity": "critical",
      "status": "pass"
    }
  ],
  "scannedAt": "2026-07-25T04:00:00Z",
  "score": 82
}

Security scan

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

Recent checks

WhenResultHTTPTimePrice
25 min agoPassed402467 ms$0.05
4 h agoPassed402587 ms$0.05
8 h agoPassed402467 ms$0.05
11 h agoPassed402474 ms$0.05
16 h agoPassed402276 ms$0.05
19 h agoPassed402441 ms$0.05
22 h agoPassed402459 ms$0.05
27 h agoPassed402486 ms$0.05