Analyze the Raw List of Activities with REST API (version 2.0)

BUSINESS_ACTIVITIES_RAW returns the list of activities as reported to Aternity one by one, showing the detailed user experience of all activities performed. For example, you can check one, several, or all devices, or any whose hostname contains the text mktg, for one user or any combination of users.

Each returned entry from BUSINESS_ACTIVITIES_RAW represents the performance of a single activity (Activity) by a specific user on a specific device, including the status (Detection_Status) and measurement time (Measurement_Time). It also adds the application details, its resource usage at the exact time when the user performed this activity (PRC_ fields), and the device details, including the device's entire resource usage (HRC_ fields) at the exact time of the activity. This information allows you to correlate the resource usage of an activity.

This data is similar to the information displayed in the User Experience dashboard (learn more).

The Monitor User Experience Dashboard
Note

You can access data using this API (retention) going back up to 7 days. If you do not add a relative_time filter, by default it returns data for the past day.

Note

This article covers the latest REST API version. For older version 1.0, click here.

Before You Begin

To send a REST API query in Excel, PowerBI or a browser, enter the URL of the REST API, your Aternity username (must have the OData REST API role) and its password. You can find this by selecting User icon > REST API Access. SSO users must generate (once) and use a special password, as Aternity's REST API does not authenticate with your enterprise's identity provider.

To view Aternity REST API, enter the base URL from Aternity > User icon > REST API Access, followed by the name of the API into a browser, Excel or PowerBI (learn more). For VIEWING, use <base_url>/latest/API_NAME; for INTEGRATIONS, use <base_url>/<version number>/API_NAME (for example, <base_url>/v1/API_NAME, or <base_url>/v1.0/API_NAME, or <base_url>/v2/API_NAME, or <base_url>/v2.0/API_NAME).

Get the latest REST API version for analyzing in the external app
:
Tip

Wherever possible, use $select and $filter to narrow your query, to avoid receiving an error like Returned data is too large. Learn more.

Examples

To access this API from a browser, Excel or Power BI (learn more), enter <base_url>/BUSINESS_ACTIVITIES_RAW

A typical query showing a classic aggregation for this API would be:

.../BUSINESS_ACTIVITIES_RAW? select=Activity_Name,Application_Name,Application_Type,Application_Version,Browser,Business_Location,Device_Days_From_Last_Boot,Location_City,Location_Country,Location_Region,Location_State,Device_Network_Type,On_Site,On_VPN,OS_Architecture,OS_Disk_Type,OS_Name,OS_Version,Server_Hostname,Server_IP,Server_Name,Device_Name,Device_Type,User_Department,Username,Activity_Response_Time,Activity_Client_Time,Activity_Detection_Status,Network_Incoming_Traffic_Total,Network_Outgoing_Traffic_Total,Activity_Network_Time_Avg,Activity_Backend_Time_Avg,Activity_Volume,Application_Remote_Display_Latency&$filter=relative_time(last_2_hours)

To view each activity from a specific username in the last six hours, along with its response time, application name, and activity status, enter:

.../BUSINESS_ACTIVITIES_RAW?$select=APPLICATION_NAME,ACTIVITY_NAME,ACTIVITY_DETECTION_STATUS,TIMEFRAME&$filter=relative_time(last_6_hours) and contains(USERNAME,'jsmith')

To verify whether a small RAM is responsible for slowness when launching Microsoft Outlook, view the RAM on devices where the Launch activity is longer than 3 seconds:

.../BUSINESS_ACTIVITIES_RAW?$select=DEVICE_MEMORY,ACTIVITY_RESPONSE_TIME&$filter=contains(APPLICATION_NAME,'Outlook') and contains(ACTIVITY_NAME,'Launch') and ACTIVITY_RESPONSE_TIME gt 3

Supported Parameters

You can view the data by entering the URL into Excel, into a browser, or into or any OData compatible application such as Power BI.

You can add parameters to the URL to filter the returned data, by adding a question mark (?) followed by a parameter and value, such as .../API_NAME?$filter=(USERNAME eq 'jsmith@company.com'), or several parameter-value pairs each separated by an ampersand (&), like .../API_NAME?$format=xml&$top=5.

Query Options Description
$select=

Use $select to return only specific columns (attributes), to make queries more efficient: ...API_NAME?$select=COL1,COL2,COL3

$format=

Use $format to force the returned data to be either in XML or JSON format. This is only useful for testing the raw data in a web browser. For example: .../API_NAME?$format=xml

$orderby=

Use $orderby to sort the returned data according to the value you choose. For example, .../API_NAME?$orderby=LOCATION

$top=

Use $top (lower case only) when you are initially testing the response of the API by returning the first few entries.

For example, to return the first five entries (not sorted), use: ...API_NAME?$top=5

$filter=

Use $filter to insert conditions that narrow down the data, to return only entries where those conditions are true..

To limit the timeframe of a query, add $filter=relative_time() like, .../API_NAME?$filter=relative_time(last_x_hours) or (last_x_days). Learn more.

Create conditions for filtering with any of the following operators:

Query Operators Description
eq

Equal to

For example, COL4 eq 'val4'

ne

Not equal to

For example, COL4 ne 'val4'

gt

Greater than

For example, COL4 gt 'val4'

ge

Greater than or equal

For example, COL4 ge 'val4'

lt

Less than

For example, COL4 lt 'val4'

le

Less than or equal

For example, COL4 le 'val4'

and

Logical and

For example, COL1 eq 'value1' and COL2 ne 'value2'

or

Logical or

For example, COL1 eq 'value1' or COL2 ne 'value2'

not

Logical negation

Create conditions for filtering with any of the following functions:

Query Functions Description
startswith

For example, $filter=startswith(account_name,'Aternity')

endswith

For example, $filter=endswith(account_name,'Aternity')

contains

$filter=contains(COL5,'val5')

For example, $filter=contains(account_name,'Aternity')

Use operators with parentheses to group conditions logically: .../API_NAME?$filter=(COLUMN1 eq 'value1' or COL2 neq 'val2') and (COL3 gt number) and not (COL4 eq 'val4' or contains(COL5,'val5'))
$search is NOT supported.

Do not use $search in Aternity's REST APIs.

Tip

Wherever possible, use $select and $filter to narrow your query, to avoid receiving an error like Returned data is too large. Learn more.

Output

Each returned entry from BUSINESS_ACTIVITIES_RAW represents the performance of a single activity (Activity) by a specific user on a specific device, including the status (Detection_Status) and measurement time (Measurement_Time). It also adds the application details, its resource usage at the exact time when the user performed this activity (PRC_ fields), and the device details, including the device's entire resource usage (HRC_ fields) at the exact time of the activity. This information allows you to correlate the resource usage of an activity.

You can view personally identifiable information (PII) in RAW, HOURLY and DAILY aggregations of Aternity's REST APIs, but there is no PII in the DAILY_ANONYMIZED APIs (learn more). There is no PII in any API which has data for longer than three months.

Sample output from BUSINESS_ACTIVITIES_RAW

The API returns two types of columns: Attributes (or dimensions) which are the properties of an entry, and Measurements which are the dynamic measured values.

Type Returned columns

Measurements

Activity_Backend_Time,Activity_Client_Time,Activity_Network_Time,Activity_Remote_Display_Latency_Avg,Activity_Response_Time,HRC_CPU_Util,HRC_Disk_IO_Read_Rate,HRC_Disk_IO_Write_Rate,HRC_Disk_Queue_Length,HRC_Network_IO_Read_Rate,HRC_Network_IO_Write_Rate,HRC_Physical_Memory_Util,HRC_Virtual_Memory_Util,Network_Incoming_Traffic_Total, Network_Outgoing_Traffic_Total,Network_RTT_Avg,Page_Load_DNS_Time,Page_Load_HTTP_Status_Code,Page_Load_Processing_Time,Page_Load_Redirect_Time,Page_Load_Request_Time,Page_Load_Response_Time,Page_Load_TCP_Connect_Time,Page_Load_Time,PRC_CPU_Util,PRC_Physical_Memory_Consumed,PRC_Virtual_Memory_Consumed

Attributes

Account_ID,Activity_Additional_Info1, Activity_Additional_Info2,Activity_Detection_Status,Activity_Diverse_Value_1 - 3,Activity_Name,Activity_Page_Title,Application_Name,Application_Type,Application_Version,Browser,Business_Location,Calendar_Date,Calendar_Month,Calendar_Week,Client_Device_Name,Client_Device_Type,Corp_Channel,Corp_Line_Of_Business,Corp_Market,Corp_Store_ID,Corp_Store_Type,Custom_Attribute_1 - 6,Custom_Pilot_Group,Data_Center_Business_Location,Device_CPU_Cores,Device_CPU_Frequency,Device_CPU_Generation,Device_CPU_Model,Device_CPU_Type,Device_Days_From_Last_Boot,Device_ID_Mobile_Or_Mac,Device_Image_Build_Number,Device_IP_Address,Device_Manufacturer,Device_Memory,Device_Model,Device_Name,Device_Network_Type,Device_Power_Plan,Device_Subnet,Device_Type,Location_City,Location_Country,Location_On_Site,Location_On_VPN,Location_Region,Location_State,Measurement_Start_Timestamp,Mobile_Carrier,MS_Office_License_Type,MS_Office_Version,OS_Architecture,OS_Disk_Type,OS_Family,OS_Name,OS_Version,Server_Hostname,Server_IP,Server_Name,SLA_Status,Timeframe,User_Department,User_Domain,User_Email_Address,User_Full_Name,User_Office,User_Role,User_Title,Username,Virtualization,Wifi_BSSID,Wifi_Channel,Wifi_SSID,Account_Name