Skip to content
Start here

Get network path breakdown for a traceroute test

client.zeroTrust.dex.tracerouteTests.networkPath(stringtestId, TracerouteTestNetworkPathParams { account_id, deviceId, from, 2 more } params, RequestOptionsoptions?): NetworkPathResponse { id, deviceName, interval, 4 more }
GET/accounts/{account_id}/dex/traceroute-tests/{test_id}/network-path

Get a breakdown of metrics by hop for individual traceroute test runs

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
Accepted Permissions (at least one required)
Cloudflare DEX WriteCloudflare DEX ReadZero Trust ReportZero Trust Read
ParametersExpand Collapse
testId: string

API Resource UUID tag.

maxLength36
params: TracerouteTestNetworkPathParams { account_id, deviceId, from, 2 more }
account_id: string

Path param: unique identifier linked to an account

maxLength32
deviceId: string

Query param: Device to filter tracroute result runs to

from: string

Query param: Start time for aggregate metrics in ISO ms

interval: "minute" | "hour"

Query param: Time interval for aggregate time slots.

One of the following:
"minute"
"hour"
to: string

Query param: End time for aggregate metrics in ISO ms

ReturnsExpand Collapse
NetworkPathResponse { id, deviceName, interval, 4 more }
id: string

API Resource UUID tag.

maxLength36
deviceName?: string
interval?: string

The interval at which the Traceroute synthetic application test is set to run.

kind?: "traceroute"
name?: string
networkPath?: NetworkPath { slots, sampling } | null
slots: Array<Slot>
id: string

API Resource UUID tag.

maxLength36
clientToAppRttMs: number | null

Round trip time in ms of the client to app mile

clientToCfEgressRttMs: number | null

Round trip time in ms of the client to Cloudflare egress mile

clientToCfIngressRttMs: number | null

Round trip time in ms of the client to Cloudflare ingress mile

timestamp: string
clientToIspRttMs?: number | null

Round trip time in ms of the client to ISP mile

sampling?: Sampling | null

Specifies the sampling applied, if any, to the slots response. When sampled, results shown represent the first test run to the start of each sampling interval.

unit: "hours"
value: number
url?: string

The host of the Traceroute synthetic application test

Get network path breakdown for a traceroute test

import Cloudflare from 'cloudflare';

const client = new Cloudflare({
  apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted
});

const networkPathResponse = await client.zeroTrust.dex.tracerouteTests.networkPath(
  'f174e90a-fafe-4643-bbbc-4a0ed4fc8415',
  {
    account_id: '01a7362d577a6c3019a474fd6f485823',
    deviceId: 'deviceId',
    from: '1689520412000',
    interval: 'minute',
    to: '1689606812000',
  },
);

console.log(networkPathResponse.id);
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
    "deviceName": "deviceName",
    "interval": "0h5m0s",
    "kind": "traceroute",
    "name": "name",
    "networkPath": {
      "slots": [
        {
          "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
          "clientToAppRttMs": 0,
          "clientToCfEgressRttMs": 0,
          "clientToCfIngressRttMs": 0,
          "timestamp": "2023-07-16 15:00:00+00",
          "clientToIspRttMs": 0
        }
      ],
      "sampling": {
        "unit": "hours",
        "value": 0
      }
    },
    "url": "1.1.1.1"
  }
}
Returns Examples
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
    "deviceName": "deviceName",
    "interval": "0h5m0s",
    "kind": "traceroute",
    "name": "name",
    "networkPath": {
      "slots": [
        {
          "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
          "clientToAppRttMs": 0,
          "clientToCfEgressRttMs": 0,
          "clientToCfIngressRttMs": 0,
          "timestamp": "2023-07-16 15:00:00+00",
          "clientToIspRttMs": 0
        }
      ],
      "sampling": {
        "unit": "hours",
        "value": 0
      }
    },
    "url": "1.1.1.1"
  }
}