Try the RankNibbler SEO API

Traceroute Beta

GET /api/v1/traceroute

Trace the path from our checking server to a host, on demand. Useful when a site is reachable for you but not for us, or the other way round.

Needs an X-API-Key header whose owner has access to uptime monitoring in the app. The call counts once against your daily quota. See Monitoring API: getting started for authentication, rate limits and errors.

Read-only: anything other than GET returns 405.

Query parameters

NameTypeDescription
host requiredstringThe host to trace, such as example.com or an IP address.
hops optionalintegerHow far to go, 1 to 30. Default 15.

The host is checked the same way a monitor's target is, so private, local and internal addresses are refused with 400.

A traceroute is slow and noisy, so it's limited to three a minute per key. Over that you get 429 with Retry-After: 60, and it still costs one request against your daily quota.

Request

Response

200 · application/json
  1. {
  2. "host": "example.com",
  3. "address": "203.0.113.10",
  4. "hops": [
  5. { "hop": 1, "address": "10.0.0.1", "ms": 1, "timedOut": false },
  6. { "hop": 2, "address": null, "ms": null, "timedOut": true },
  7. { "hop": 3, "address": "203.0.113.10", "ms": 14, "timedOut": false }
  8. ],
  9. "usage": { "used": 56, "dailyLimit": 100, "tier": "free" }
  10. }

Response fields

FieldTypeDescription
hoststringThe host you asked for.
addressstringThe address it resolved to, which is what was traced.
hops[].hopintegerThe hop number, counting out from the checking server.
hops[].addressstring | nullThe address that answered, or null when nothing did.
hops[].msinteger | nullThe round trip to that hop.
hops[].timedOutbooleantrue when the hop didn't answer. Plenty of routers drop these on purpose, so a gap in the middle is normal.

Errors

StatusWhen
400No host, or a host that is private, local or otherwise not allowed.
401The API key is missing or invalid.
403The key's owner doesn't have access to uptime monitoring, or the key isn't linked to a workspace.
405Anything other than GET.
429More than three traceroutes a minute for this key, or your daily quota. Read Retry-After, in seconds.
503The checking server can't run a traceroute: A traceroute isn't available from this checking server. A container often can't, and that is reported plainly rather than as a failure.
500, 503Something went wrong, or the API is temporarily unavailable. Try again.

Errors are JSON: { "error": "message" }. See Monitoring API errors.

Related