Execute Report (v1)

Execute report on the insights of the application and view result.

Endpoint URL

POST https://api-prod-eu-central-1.inappnavi.com/api/public/v1/insights/executeReport

Purpose

Execute report on the insights of the application and view result.

Request Structure

When making a POST request to /executeReport,include the authentication token in the header and include the following JSON body.. Below is a common example; parameter names or structures may differ based on your final OpenAPI documentation:

ParameterTypeRequiredDescription
TenantIdstringYesThe unique tenant identifier.
ClientIdstringYesThe unique client identifier.
ClientSecretstringYesThe client secret.
QueryParamsQueryParamsYesThe Additional data required to process API request.

QueryParams Parameters:

Parameter

Type

Required

Description

ApplicationId

string

Yes

The start date for the execution of report on insight data.

displayedColumns

Array of Strings

Yes

The list of property/column names to include in the insight execute report. Minimum 1 column name is required to process the report. e.g. ["EventType"]. Available displayed columns are
[" ","id","eventType","sessionId","userId",timestamp" ","avatarVersion","integrationMode","browser",browserLanguage" ","pageUrl","pageTitle","pageLoadTime","userRole",country" ","timeZone","areaLabel","elementLabel","areaId",tagType" ","activityScope","activityTime","customField1",customField2" ","customField3","resolution"organizationalUnit ]

reportFilters

Array of ReportFilter

No

The list of filters to be applied to report.

groupBy

Array of Strings

No

The name of columns on which group by clause will be applied.

fromDate

string

No

Start date in YYYY-MM-DD HH:MM:SS format. If provided, set TimeRange to VIEW_CUSTOM_DAYS.

toDate

string

No

End date in YYYY-MM-DD HH:MM:SS format. If provided, set TimeRange to VIEW_CUSTOM_DAYS.

page

integer

No

The page number to retrieve data from. Defaults to 1.

itemsPerPage

integer

No

The number of items to retrieve per page. Defaults to 50, if not specified.

ReportFilter Parameters:

ParameterTypeRequiredDescription
ColumnNamestringYesThe column name on which filter will be applied.
ValuesArrays of stringYesThe conditional values
OperatorstringYesThe textual operator to be applied between column name and values. Available operators are equal_to, not_equal_to, less_than_or_equal_to, less_than, greater_than_or_equal_to, greater_than, between, exists, not_exists, contains, not_contains, begins_with

ReportFilterOperator Information:

This table shows each column name along with the operators that cannot be used when creating filters for that column. If you see an operator listed in the “Not Available Operator” column, it means that operator is invalid or unsupported for that specific column and will not work in your filter expressions.

Column NameNot available operator
idexists, not_exists, between, less_than_or_equal_to, less_than, greater_than_or_equal_to, greater_than
eventTypeexists, not_exists, less_than_or_equal_to, between, less_than, greater_than_or_equal_to, greater_than
sessionIdexists, not_exists, less_than_or_equal_to, between, less_than, greater_than_or_equal_to, greater_than
userIdexists, not_exists, less_than_or_equal_to, between, less_than, greater_than_or_equal_to, greater_than
timestampexists, not_exists, contains, not_contains, begins_with
avatarVersionexists, not_exists, contains, between, not_contains, begins_with
integrationModeexists, not_exists, less_than_or_equal_to, between, less_than, greater_than_or_equal_to, greater_than
browserexists, not_exists, less_than_or_equal_to, between, less_than, greater_than_or_equal_to, greater_than
browserLanguageexists, not_exists, less_than_or_equal_to, between, less_than, greater_than_or_equal_to, greater_than
pageUrlexists, not_exists, less_than_or_equal_to,between, less_than, greater_than_or_equal_to, greater_than
pageTitleless_than_or_equal_to, less_than, between, greater_than_or_equal_to, greater_than
pageLoadTimecontains, not_contains, begins_with
userRoleless_than_or_equal_to, less_than, between, greater_than_or_equal_to, greater_than
countryCodeexists, not_exists, less_than_or_equal_to, between, less_than, greater_than_or_equal_to, greater_than
timeZoneexists, not_exists, less_than_or_equal_to, between, less_than, greater_than_or_equal_to, greater_than
areaLabelexists, not_exists, less_than_or_equal_to, between, less_than, greater_than_or_equal_to, greater_than
elementLabelexists, not_exists, less_than_or_equal_to, between, less_than, greater_than_or_equal_to, greater_than
areaIdless_than_or_equal_to, less_than, between, greater_than_or_equal_to, greater_than
tagTypeless_than_or_equal_to, less_than, between, greater_than_or_equal_to, greater_than
activityScopeless_than_or_equal_to, less_than, between, greater_than_or_equal_to, greater_than

Example: Calling via Postman

  1. Open Postman and create a new POST request.
  2. Set the Request URL to:
https://api-prod-eu-central-1.inappnavi.com/api/public/v1/insights/executeReport
  1. Compose the Body:
    1. In the Body tab, choose raw and then JSON.
    2. Enter the required parameters in the request body.
    3. Example request body structure.
{
    "QueryParams": {
        "applicationId": "applicationIdentifier",
        "DateFrom": "2024-01-21 00:00:00.000",
        "DateTo": "2025-01-21 00:00:00.000",
        "displayedColumns": [ "pageTitle" ],
        "reportFilters": [
            {
                "columnName": "pageUrl",
                "values": [ "someValue" ],
                "operator": "contains"
            },
            {
                "columnName": "browser",
                "values": [ "someValue" ],
                "operator": "contains"
            }
        ],
        "groupBy": [],
        "itemsPerPage": 50,
        "page": 1
    }
}

  1. Send the Request:

    1. Click Send.
    2. If everything is correct, you should receive a 200 OK response with a JSON response containing the execute report data.