Statistics
#TenantController
Overview
Description
Path /v2/statistics
Provides statistic information about different parts in roomle
To retrieve tenant statistics (subpath tenants/:id/
) the user needs TENANT_STATISTICS rights within this tenant.
API Reference
GET tenants/:id/useractions/
Generates: application/json , text/csv
returns the monthly-aggregated useractions within this tenant. possible filters:
module
action (only allowed with module filter is also present)
sample results:
{
"userActions":[
{
"date":"2014-12-31T23:00:00.000Z",
"module":4,
"action":1,
"tenant":2,
"count":2,
"aggregationLevel":2}
,...
]
}
"module","action","tenant","count","month","year",
4,1,2,2,1,2015
4,1,2,1,4,2015
4,1,2,46,5,2015
please note that the date is the date of the first userAction that appeared within the aggregation period (in this case months)
GET tenants/:id/userActionsAggregated
Generates: application/json
Returns the aggregated UserActions in the list for the specified tenant, module and actions in the time frame (from-to) If the time frame is incomplete/absent, the current month is returned If aggregations[] are posted, the results are additionaly aggregated by the posted parameters as well
path-param:
id (Long): the tenantId query-param:
module (Integer): id of the requested Module
actions[] (List of Integer): List of integers of the Actions
from (String): has to be a date string with timezone. This string has to match following example
2016-06-01T07:54:07.000Z
.to (String): has to be a date string with timezone. This string has to match following example
2016-06-01T07:54:07.000Z
.aggregations[] (List of String) : List of parameters by which the UserActions are additionaly aggregated - More info
aggregations[]
The list can contain only specific strings, which equal columns in the DB. These are:
country
device
actionLabel - it is used by the configurator for storing the configuratorId
actionId - it is used by the configurator to store the item/configuration ID Any other strings will be rejected with a 400 error
sample results:
{
"userActions": [
{
"module": 4,
"action": 1,
"tenant": 2,
"count": 49,
"aggregationLevel": 0
},
{
"module": 4,
"action": 3,
"tenant": 2,
"count": 2,
"aggregationLevel": 0
}
],
"meta": {
"total": 2,
"serverTime": "2021-04-15T08:55:20.421Z"
}
}
GET tenants/:id/configurations
Generates: application/json , text/csv
path-param:
id (Long): the tenantId query-param:
from (String): has to be a date string with timezone. This string has to match following example
2016-06-01T07:54:07.000Z
.to (String): has to be a date string with timezone. This string has to match following example
2016-06-01T07:54:07.000Z
.configuratorId (String) : Configurator id of the requested statistics
includePartlist (boolean) : whether to include partlists in the reply. default true, must be false when requesting more than 90 days
actions[] (List of Integer): List of integers of the Actions - only supported actions will be returned
If configuratorId is provided, the data is filtered to this configurator. Otherwise all tenant data is returned. Note: If the timeframe is missing or incomplete (from and/or to are missing) the call will return the statistic for the last 30 days
fields:
link - link to the configuration
embedId - configuratorId used for the action
thumbnail - thumbnail to the configuration perspective image
created - date of creation - in aggregated entries it is the time of start of aggregation period
module - int number representing the module
action - int number representing the action
actionParameter - additional data regarding the action
count
aggregationLevel - string representation of aggregation level
possible values:
real time - un-aggregated
daily - aggregated by day
montlhy - aggregated by month Additional columns - depending on the requested action:
userEmail - email of user who saved the configuration - users without consent are not returned as well as users of aggregated entries
partList - a serialized json containing the part list of the configuration
sample results:
{
"tenantConfigurationStatistics":[
{
"embedId":"someConfigurator",
"link":"https://www.roomle.com/t/cp/?id=conf:igu:ration12345",
"thumbnail":"https://url.to.perspective/image.jpg",
"created":"2021-07-21T00:00:00.000Z",
"module": 8,
"action": 1,
"actionParameter":"",
"count":15,
"aggregationLevel":"daily",
"userEmail":"[email protected]",
"partList":
{
"articleNr":"article1",
"count":1,
"label":"Frame without door",
"component_id":"frameComponent",
...
},
"planCombinedIds" :
[
"conf:igu:ration12345",
"conf:igu:ration58471",
"catalogId:itemId"
]
}
, ...
]
}
"link","embedId","thumbnail","created","module","action","actionParameter","count","aggregationLevel","userEmail","partList","planCombinedIds"
"https://www.roomle.com/t/cp/?id=conf:igu:rationB1AER98B1AE98RB1E98RB1","someConfigurator","https://url.to.perspective/image1.jpg","2021-09-21T12:17:59.968Z","MOC","Save_Draft","",1,"real time","[email protected]","{""originPart"":{""articleNr"":""article1"",""count"":1,""label"":""Frame without door"",""component_id"":""frameComponent"",...}",""
"https://www.roomle.com/t/cp/?id=conf:igu:rationF1V9AE8RB1AE98RB1ER98B","someConfigurator","https://url.to.perspective/image2.jpg","2021-07-21T00:00:00.000Z","Configurator","Save_Draft","",5,"daily","","{""originPart"":{""articleNr"":""article2"",""count"":1,""label"":""Frame with door"","component_id"":""frameWithDoorComponent"",...}",""
"https://www.roomle.com/t/cp/?id=catalog:item:NI1816321831681POOLKM484","someConfigurator","https://url.to.perspective/image3.jpg","2021-02-01T00:00:00.000Z","Save_Draft","",27,"monthly","","{""originPart"":{""articleNr"":""article3"",""count"":1,""label"":""Door"",""component_id"":""doorComponent"",...}",""
"https://www.roomle.com/t/cp/?id=catalog:item","someConfigurator1","https://url.to.perspective/image1.jpg","2021-09-21T12:17:59.968Z","Configurator","View","",1,"real time","","",""
"https://www.roomle.com/t/cp/?id=ps_uniquePlanId","someConfigurator1","https://url.to.perspective/image1.jpg","2021-09-21T12:17:59.968Z","MOC","Save_Plan","",1,"real time","[email protected]","","conf:igu:rationF1V9AE8RB1AE98RB1ER98B,catalog:item,catalog:item2,catalog:item:NI1816321831681POOLKM484"
please note that the date is the date of the first userAction that appeared within the aggregation period
Last updated