Our web service API makes data collected and generated by AppNeta Performance Manager (APM) available for analysis, reporting, and presentation in third-party systems. Results are delivered in a lightweight JSON format that can be readily consumed by a broad range of clients.

An interactive interface is available and is the best place to start learning and experimenting with the API. In fact, it is a good place to stage some API calls before implementing them in your integration software. The interactive interface also provides detailed documentation about each endpoint the parameters. You access the interactive interface through the settings menu of APM.

Getting started with the API

  1. Navigate to > API.
  2. Select “path” endpoint.
  3. Click Try it out! without filling in any parameters.
  4. Review the results as there are a few things that will help get you going.
    • An example curl command is shown.
    • The specific request URL to use is shown.
    • The actual JSON output from this API call is shown under “Response Body”.
  5. Experiment by filling in a few parameters and clicking Try it out!.
  6. Experiment with other endpoints.

Obtaining “IDs”

Many of the endpoints require an “ID” parameter to filter down to one specific object. For example “Path ID” or “Web Path ID”. The easiest way to obtain specific IDs is by navigating to a page in the APM user interface showing details of that object. For example, if you navigate to the network path details page and hover over the path name, the “Path ID” will be presented over the mouse pointer. Similarly, if you navigate to a web path details page and hover over the web path name, the “WebPath ID” will be shown.

Example: Retrieve path data for a specific time range

You’ll need three pieces of info: path ID, start time (optional), end time (optional).

Using the interactive interface

  1. Navigate to Delivery > Network Path List.
  2. Hover over the path name of interest. The tooltip presents a path id.
  3. Next you’ll need the start and end times in unix time(milliseconds). Try this free tool.
  4. Navigate to > API.
  5. Open path > GET /v3/path/{id}/data.
  6. Fill in the blanks and click Try it out!

From the command line, using curl

  1. Navigate to Delivery > Network Path List.
  2. Hover over the path name of interest. The tooltip presents a path id.
  3. Next you’ll need the start and end times in unix time(milliseconds). Try this free tool.
  4. Navigate to > API.
  5. Open path > GET /v3/path/{id}/data.
  6. Use the Swagger interface to create the curl syntax for your query.
  7. Fill in your user credentials and execute the command.

An example, in action

The following example gets exactly one total capacity measurement:

curl -X GET --header "Accept: application/json" -u email:password "https://yourAppNetaNode.pm.appneta.com/api/v3/path/81103/data?from=1462406460000&to=1462406460000&metric=totalcapacity" | python -m json.tool
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
100   295  100   295    0     0    569      0 --:--:-- --:--:-- --:--:--   679
{
"data": {
"availableCapacity": [],
"dataJitter": [],
"dataLoss": [],
"latency": [],
"mos": [],
"rtt": [],
"totalCapacity": [],
"twampJitter": [],
"twampLoss": [],
"twampRtt": [],
"utilizedCapacity": [],
 "voiceJitter": [],
 "voiceLoss": []
 },
 "dataInbound": null,
 "dataOutbound": null,
 "instrumentation": "ONE_WAY",
 "pathId": 81103
 }

Rate limit

AppNeta limits the number of API requests that can be made over a given period of time. Currently the rate limit is 50 requests every 10 seconds.