Working with reports
This section provides examples in curl and python of how to use the Reporting API to generate reports according to your preferences. You can define time window, granularity, metric, aggregation type, and apply a range of filter dimensions.
When creating a report you will:
- Define the time window.
- Specify granularity, which is the time interval between data points.
- Define your filters with the
dimensionsobject, and the
dimension_filter_clausesobject which will contain an array of
- Request metrics such as connections, time usage, and data usage with the
aggregation_typeto choose which data within the raw report data you want to see.
The example scripts in this section give a response in json format, however you can get responses in csv format with
--header 'Accept: text/csv'.
Some of the reports below require you to specify the time window over which to run the report.
The time window is set with
end_date_time. You can either specify actual times and dates, in the format
YYYY-MM-DDTHH:mm:ss, or request a set time block with
LAST MONTH or
NOW (returns the last 5 minutes).
If you are requesting a set time block, this must be configured in both
end_date_time, for example:
"start_date_time": "LAST HOUR",
"end_date_time": "LAST HOUR",
You can also specify the data point frequency in your report with the
granularity parameter, which can be
DAY (default is
Dimensions and metrics
As mentioned above, you will request a report
metric, and filter it with
dimensions. Our reports are grouped into mobile device or 'UE' reports, and Edge Point reports. Refer to the Mobile Device (UE) Reports and Edge Point Reports sections for more details.
A report will gather many data points, and you decide which specific data you are interested in by defining the
aggregation_type. This may be a single data point, such as
MIN, or a calculation derived from multiple data points, such as
Supported aggregation types are:
EXISTS(for status reports)
COUNT(sum of data points)
metrics support different
All other metrics: