Fetch Timeline
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
startDate: '2026-02-08 00:00:00',
endDate: '2026-02-08 23:59:59',
timeZone: 'Asia/Kolkata',
userId: ['ab7c4f30-1024-471a-a767-739df0dc53fd'],
offset: 0,
limit: 15,
teamId: []
})
};
fetch('https://api.trackpilots.com/v1/proof-of-work/app-usage/timeline', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request POST \
--url https://api.trackpilots.com/v1/proof-of-work/app-usage/timeline \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"startDate": "2026-02-08 00:00:00",
"endDate": "2026-02-08 23:59:59",
"timeZone": "Asia/Kolkata",
"userId": [
"ab7c4f30-1024-471a-a767-739df0dc53fd"
],
"offset": 0,
"limit": 15,
"teamId": []
}
'import requests
url = "https://api.trackpilots.com/v1/proof-of-work/app-usage/timeline"
payload = {
"startDate": "2026-02-08 00:00:00",
"endDate": "2026-02-08 23:59:59",
"timeZone": "Asia/Kolkata",
"userId": ["ab7c4f30-1024-471a-a767-739df0dc53fd"],
"offset": 0,
"limit": 15,
"teamId": []
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"success": true,
"statusCode": 200,
"statusMessage": "Fetched app usage timeline successfully",
"error": null,
"data": [
{
"user": {
"userId": "ab7c4f30-1024-471a-a767-739df0dc53fd",
"name": "Sakthivel Govinthan",
"profilePicUrl": "https://trackpilots.s3.amazonaws.com/profile-pic/sample.png",
"emailId": "sakthiveltechit@gmail.com"
},
"time": {
"startTime": "2026-02-14T03:42:39.112Z",
"endTime": "2026-02-14T03:42:40.667Z",
"durationInSeconds": 1
},
"application": {
"name": "Google Chrome",
"iconUrl": "https://vendors.paddle.com/favicon.ico",
"type": "website",
"category": "Unknown",
"domain": "vendors.paddle.com",
"fullUrl": "https://vendors.paddle.com"
}
}
]
}PoW - App Usage
Fetch Timeline
Fetch app usage timeline with particular interval of time
POST
/
v1
/
proof-of-work
/
app-usage
/
timeline
Fetch Timeline
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
startDate: '2026-02-08 00:00:00',
endDate: '2026-02-08 23:59:59',
timeZone: 'Asia/Kolkata',
userId: ['ab7c4f30-1024-471a-a767-739df0dc53fd'],
offset: 0,
limit: 15,
teamId: []
})
};
fetch('https://api.trackpilots.com/v1/proof-of-work/app-usage/timeline', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request POST \
--url https://api.trackpilots.com/v1/proof-of-work/app-usage/timeline \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"startDate": "2026-02-08 00:00:00",
"endDate": "2026-02-08 23:59:59",
"timeZone": "Asia/Kolkata",
"userId": [
"ab7c4f30-1024-471a-a767-739df0dc53fd"
],
"offset": 0,
"limit": 15,
"teamId": []
}
'import requests
url = "https://api.trackpilots.com/v1/proof-of-work/app-usage/timeline"
payload = {
"startDate": "2026-02-08 00:00:00",
"endDate": "2026-02-08 23:59:59",
"timeZone": "Asia/Kolkata",
"userId": ["ab7c4f30-1024-471a-a767-739df0dc53fd"],
"offset": 0,
"limit": 15,
"teamId": []
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"success": true,
"statusCode": 200,
"statusMessage": "Fetched app usage timeline successfully",
"error": null,
"data": [
{
"user": {
"userId": "ab7c4f30-1024-471a-a767-739df0dc53fd",
"name": "Sakthivel Govinthan",
"profilePicUrl": "https://trackpilots.s3.amazonaws.com/profile-pic/sample.png",
"emailId": "sakthiveltechit@gmail.com"
},
"time": {
"startTime": "2026-02-14T03:42:39.112Z",
"endTime": "2026-02-14T03:42:40.667Z",
"durationInSeconds": 1
},
"application": {
"name": "Google Chrome",
"iconUrl": "https://vendors.paddle.com/favicon.ico",
"type": "website",
"category": "Unknown",
"domain": "vendors.paddle.com",
"fullUrl": "https://vendors.paddle.com"
}
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
- Option 1
- Option 2
Either userId or teamId must be provided. Both cannot be empty.
Example:
"2026-02-08 00:00:00"
Example:
"2026-02-08 23:59:59"
IANA timezone of the requester
Example:
"Asia/Kolkata"
List of user UUIDs to fetch screenshots for
Required range:
x >= 0Example:
0
Required range:
1 <= x <= 100Example:
15
List of team UUIDs to fetch screenshots for
Example:
[]
