81trust / 100

Redirect Trace

by NetIntel in Security & trust

x402 APIPassing, checked 39 min ago

Follows a URL through its full redirect chain (up to 20 hops), recording status codes, timing, headers, TLS status, and protocol downgrades per hop, then returns an overall redirect health grade (A–F).

GET https://netintel.dev/redirect/trace

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
186 ms typical, 186 ms slowest 5%
Last check
39 min ago
Next check
any minute now

How to call it

# See the payment challenge (nothing is charged)
curl -i -X GET "https://netintel.dev/redirect/trace?max_hops=10&url=http%3A%2F%2Fexample.com"
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%2Fnetintel.dev%2Fredirect%2Ftrace
const res = await pay("https://netintel.dev/redirect/trace?max_hops=10&url=http%3A%2F%2Fexample.com");
console.log(await res.json());

Example input

{
  "max_hops": 10,
  "url": "http://example.com"
}

Example output

{
  "chain": [
    {
      "headers": {
        "location": "https://example.com/",
        "server": "nginx"
      },
      "hop": 0,
      "location": "https://example.com/",
      "status_code": 301,
      "timing_ms": 85,
      "tls": false,
      "url": "http://example.com/"
    },
    {
      "headers": {
        "content-type": "text/html",
        "server": "nginx"
      },
      "hop": 1,
      "location": null,
      "status_code": 200,
      "timing_ms": 42,
      "tls": true,
      "url": "https://example.com/"
    }
  ],
  "deductions": [
    {
      "points": -5,
      "reason": "http_entry_point"
    }
  ],
  "final_status_code": 200,
  "final_url": "https://example.com/",
  "flags": [
    "http_entry_point"
  ],
  "grade": "A",
  "loop_detected": false,
  "protocol_downgrade": false,
  "score": 95,
  "total_hops": 1,
  "total_timing_ms": 127
}

Security scan

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

Recent checks

WhenResultHTTPTimePrice
39 min agoPassed402189 ms$0.01
4 h agoPassed402186 ms$0.01
9 h agoPassed402175 ms$0.01