The information provided by API Endpoints is typically intended to be parsed by scripts however it's occasionally required to manually interpret the results when building script(s) to retrieve API data or troubleshoot them.
This article aims to provide an understanding on how to read the results from the GET /v3/data/path endpoint, specifically on how Single Ended Paths and Dual Ended Paths are separated as it may not be initially clear when manually reviewing the data presented.
The API Call for GET /v3/data/path has many options which are intended to narrow down the results which are being presented, for the purposes of this article we are focusing on the instrumentation flag. The instrumentation flag has two values which will be presented, ONE_WAY for single ended path data or data which only has a single measurement for i.e. Latency or RTT and TWO_WAY which is for Dual Ended Data results:
We will be using Notepad++'s JSON Viewer to demonstrate how the results are structured in a visual manner:
In the above image we have four sections.
1: The Instrumentation, this tells us how the data will be restructured in the following sections. In this case it is TWO_WAY or a Dual Ended Path.
2: The data section contains all of our measurements which only has a single set of data. This is used for Single Ended Paths and for measurements such as Latency or RTT:
3. The dataInbound section contains the Inbound directional data for a Dual Ended Path. It contains measurements such as Capacity, Jitter, Loss and MOS for the Inbound direction.
4. The dataOutbound section contains the Outbound directional data for a Dual Ended Path. It contains measurements such as Capacity, Jitter, Loss and MOS for the Outbound direction.
Results from a Single Ended Path will contain the same structure however all of the measurements will be in the initial data section only and the Inbound and Outbound data will be empty/null.