79trust / 100

Url Preflight

by toolbelt402.tpoborne.workers.dev in Weather & location

x402 APIPassing, checked 1 h ago

Check a URL before fetching it: is it alive, final URL after redirects, HTTP status, content type, HTML title, and whether robots.txt allows your user-agent. Link checker and fetch preflight for agents.

GET https://toolbelt402.tpoborne.workers.dev/url/preflight

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
614 ms typical, 707 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 GET "https://toolbelt402.tpoborne.workers.dev/url/preflight?ua=my-agent%2F1.0&url=https%3A%2F%2Fexample.com%2F"
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%2Ftoolbelt402.tpoborne.workers.dev%2Furl%2Fpreflight
const res = await pay("https://toolbelt402.tpoborne.workers.dev/url/preflight?ua=my-agent%2F1.0&url=https%3A%2F%2Fexample.com%2F");
console.log(await res.json());

Example input

{
  "ua": "my-agent/1.0",
  "url": "https://example.com/"
}

Example output

{
  "alive": true,
  "contentType": "text/html; charset=UTF-8",
  "finalUrl": "https://example.com/",
  "redirects": [],
  "requestedUrl": "https://example.com/",
  "robots": {
    "allowed": true,
    "fetched": true,
    "group": "*",
    "matchedRule": null
  },
  "status": 200,
  "timingMs": 350,
  "title": "Example Domain"
}

Security scan

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

Recent checks

WhenResultHTTPTimePrice
1 h agoPassed402548 ms$0.005
5 h agoPassed402707 ms$0.005
8 h agoPassed402603 ms$0.005
12 h agoPassed402656 ms$0.005
16 h agoPassed402614 ms$0.005
20 h agoPassed402636 ms$0.005
23 h agoPassed402635 ms$0.005
27 h agoPassed402591 ms$0.005
30 h agoPassed402476 ms$0.005
34 h agoPassed402494 ms$0.005
39 h agoPassed402866 ms$0.005