Task Rollups
Dashboard aggregation over the task collection: count / points / creatives / avg
complexity / return count, grouped by any combination of status, product, work_stream,
task_type and assignee. Not a new data model — a GROUP BY/SUM over fields Task
already has, e.g. group_by=assignee,status for the weekly-workload breakdown by stage.
GET
/api/v1/tasks/rollupsAuthorization
AuthorizationBearer token · headerrequiredor
AuthorizationOAuth2 access token · headerrequiredQuery parameters
date_fromstring<date-time> | anydate_tostring<date-time> | anydate_fieldstringdefault: "completed_at"
Allowed:
completed_atcreated_atgroup_bystring[]time_bucketstring | anystatus_inTaskStatus[]productstring[]work_streamWorkStream[]task_typeTaskType[]assigneestring[]sourceSource[]teamstring[]Responses
200Successful Response
successbooleandefault: true
dataRollupsResult | anyShow propertiesHide properties
Any of:
RollupsResult
rowsRollupRow[]requiredShow propertiesHide properties
Array of
RollupRowgroup_keyobjectrequiredcountintegerrequiredsum_creation_pointsnumberrequiredsum_execution_pointsnumberrequiredsum_creativesintegerrequiredavg_creation_complexitynumber | anyrequiredShow propertiesHide properties
Any of:
number
numberany
anyavg_execution_complexitynumber | anyrequiredShow propertiesHide properties
Any of:
number
numberany
anyreturn_countintegerrequiredavg_time_in_progress_secondsnumber | anyrequiredShow propertiesHide properties
Any of:
number
numberany
anyavg_time_on_check_secondsnumber | anyrequiredShow propertiesHide properties
Any of:
number
numberany
anyany
anymessagestring | anyShow propertiesHide properties
Any of:
string
stringany
anyerrorsstring[] | anyShow propertiesHide properties
Any of:
string[]
Array of
stringstringany
any422Validation Error
detailValidationError[]Show propertiesHide properties
Array of
ValidationErrorlocstring | integer[]requiredShow propertiesHide properties
Array of
string | integerAny of:
string
stringinteger
integermsgstringrequiredtypestringrequiredinputanyctxobjectRequest
curl -X GET "/api/v1/tasks/rollups" \
-H "Authorization: Bearer YOUR_TOKEN"const response = await fetch("/api/v1/tasks/rollups", {
method: "GET",
headers: {
"Authorization": "Bearer YOUR_TOKEN"
}
});import requests
response = requests.get(
"/api/v1/tasks/rollups",
headers={
"Authorization": "Bearer YOUR_TOKEN"
},
)Response
{
"success": true,
"data": {
"rows": [
{
"group_key": {
"property1": "string",
"property2": "string"
},
"count": 0,
"sum_creation_points": 0,
"sum_execution_points": 0,
"sum_creatives": 0,
"avg_creation_complexity": 0,
"avg_execution_complexity": 0,
"return_count": 0,
"avg_time_in_progress_seconds": 0,
"avg_time_on_check_seconds": 0
}
]
},
"message": "string",
"errors": [
"string"
]
}{
"detail": [
{
"loc": [
"string"
],
"msg": "string",
"type": "string",
"input": null,
"ctx": {}
}
]
}