Developer API - Reports
Introduction
The WorkComposer Reports API provides access to comprehensive productivity and time tracking data for your team. Use these endpoints to generate reports on work time, application usage, screenshots, and more to gain insights into productivity patterns and team performance.
All report endpoints require authentication using your API key and support date range filtering with timezone specification.
Summary Report
The Summary Report provides an overview of time spent on different applications and tasks, along with total worked time, break time, and away time for each user in your workspace.
API Endpoint
https://api.workcomposer.com/v1/report/summary/
Parameters
Parameter | Required | Description |
---|---|---|
apiKey | Required | Your unique API Key |
from | Optional | Start date (YYYY-MM-DD HH:mm:ss) |
to | Optional | End date (YYYY-MM-DD HH:mm:ss) |
timezone | Optional | Timezone (e.g., America/New_York) |
limit | Optional | Maximum number of results (default: 50) |
offset | Optional | Number of results to skip for pagination |
Response Example
{
"status": 1,
"totalCount": 2,
"report": [
{
"app": [
{"duration": 12066, "name": "hbo.com"},
{"duration": 8343, "name": "Terminal"},
{"duration": 6075, "name": "www.workcomposer.com"},
{"duration": 5936, "name": "WorkComposer"},
{"duration": 30360, "name": "(manual time)"}
],
"task": [
{"duration": 72732, "name": "No task"},
{"duration": 4315, "name": "Preparing email marketing campaign"},
{"duration": 6641, "name": "Test task"}
],
"time": {"workedTime": 84523, "breakTime": 16240, "awayTime": 60},
"_user": "5d2f694cd5f2b56918ad0c57"
},
{
"app": [],
"task": [],
"time": {"workedTime": 0, "breakTime": 0, "awayTime": 0},
"_user": "5ec7dadaec0c673712a8c305"
}
]
}
Screenshots
The Screenshots endpoint allows you to retrieve screenshots captured during work sessions. This data provides visual evidence of work activities and can be used for productivity analysis, time verification, and project documentation.
API Endpoint
https://api.workcomposer.com/v1/report/screenshot/
Parameters
Parameter | Required | Description |
---|---|---|
apiKey | Required | Your unique API Key |
from | Optional | Start date (YYYY-MM-DD HH:mm:ss or YYYY-MM-DD) |
to | Optional | End date (YYYY-MM-DD HH:mm:ss or YYYY-MM-DD) |
timezone | Optional | Timezone (e.g., America/New_York) |
limit | Optional | Maximum number of results (default: 50) |
offset | Optional | Number of results to skip for pagination |
Response Example
{
"status": 1,
"totalCount": 9,
"screenshots": [
{
"name": "John Doe",
"_user": "5efda363e8fab251f3f403a0",
"screenshots": []
},
{
"name": "George Areyan",
"_user": "5d2f894dd5f2b56d18ad0c56",
"screenshots": [
{
"minuteTimestamp": "2020-08-09T18:06:00+00:00",
"url": "https://api2.workcomposer.com/screenshot/5f313bed2ef7d124fab64592-862d41eb7dc47487f80a3d377b6da1d5.jpg",
"urlThumbnail": "https://api2.workcomposer.com/screenshot/5f303bed2ef7d123fab64592-861d40eb7dc47487f80a3d377b6da1d5-thumb.jpg",
"usedApps": [],
"tasks": []
}
]
}
]
}
App Usage Report
The App Usage Report provides a summary of time spent on different applications by each user. This data helps identify which tools and websites your team uses most frequently and how much time is spent on each application.
API Endpoint
https://api.workcomposer.com/v1/report/app-usage/
Parameters
Parameter | Required | Description |
---|---|---|
apiKey | Required | Your unique API Key |
from | Optional | Start date (YYYY-MM-DD HH:mm:ss or YYYY-MM-DD) |
to | Optional | End date (YYYY-MM-DD HH:mm:ss or YYYY-MM-DD) |
timezone | Optional | Timezone (e.g., America/New_York, Europe/London) |
limit | Optional | Maximum number of results (default: 50) |
offset | Optional | Number of results to skip for pagination |
Response Example
{
"status": 1,
"count": 2,
"data": [
{
"id": "627fda8c9f64bc40ed7e9f9a",
"email": "testuser@workcomposer.com",
"apps": [
{ "duration": "00:04:51", "name": "www.workcomposer.com" },
{ "duration": "00:02:35", "name": "WorkComposer" },
{ "duration": "00:02:03", "name": "zoom.us" },
{ "duration": "00:00:25", "name": "www.google.com" }
]
},
{
"id": "607840c7a4eb4ba59478c785",
"email": "anotheruser@workcomposer.com",
"apps": []
}
]
}
App Usage Log (Detailed)
The App Usage Log provides detailed, chronological information about application usage, including exact start and end times for each application session. This granular data is ideal for in-depth productivity analysis and time auditing.
API Endpoint
https://api.workcomposer.com/v1/report/app-usage-detailed/
Parameters
Parameter | Required | Description |
---|---|---|
apiKey | Required | Your unique API Key |
from | Optional | Start date (YYYY-MM-DD HH:mm:ss or YYYY-MM-DD) |
to | Optional | End date (YYYY-MM-DD HH:mm:ss or YYYY-MM-DD) |
timezone | Optional | Timezone (e.g., America/New_York, Europe/London) |
limit | Optional | Maximum number of results (default: 50) |
offset | Optional | Number of results to skip for pagination |
Response Example
{
"status": 1,
"count": 2,
"data": [
{
"id": "5f06f26df669bb08c6f62c5a",
"email": "testuser@workcomposer.com",
"appLog": [
{
"name": "WorkComposer",
"duration": 19,
"startTime": "2022-09-15T12:58:00+04:00",
"endTime": "2022-09-15T12:58:00+04:00"
},
{
"name": "https://www.google.com/",
"duration": 25,
"startTime": "2022-09-15T12:58:00+04:00",
"endTime": "2022-09-15T09:02:00+00:00"
},
{
"name": "WorkComposer",
"duration": 40,
"startTime": "2022-09-15T13:02:00+04:00",
"endTime": "2022-09-15T09:03:00+00:00"
},
{
"name": "zoom.us",
"duration": 119,
"startTime": "2022-09-15T13:03:00+04:00",
"endTime": "2022-09-15T09:05:00+00:00"
},
{
"name": "https://www.workcomposer.com/signin/",
"duration": 10,
"startTime": "2022-09-15T13:05:00+04:00",
"endTime": "2022-09-15T13:05:00+04:00"
},
{
"name": "https://www.workcomposer.com/workspace/settings/organization-preferences/tracking",
"duration": 3,
"startTime": "2022-09-15T13:05:00+04:00",
"endTime": "2022-09-15T13:05:00+04:00"
}
]
},
{
"id": "607840c7a4eb4ba59478c785",
"email": "anotheruser@workcomposer.com",
"appLog": []
}
]
}
Best Practices
Use date ranges wisely: Specify both from
and to
parameters to limit the amount of data returned, especially for large teams or long time periods.
Implement pagination: Use the limit
and offset
parameters to paginate through large result sets for better performance.
Specify timezone: Always include the timezone
parameter to ensure consistent date/time handling across different geographical locations.
Need Help?
If you have questions about using the Reports API or need assistance with implementing these endpoints in your application, our developer support team is available to help.
Contact Developer Support