Skip to main content
POST
/
v1
/
dashboard
/
productivity-analysis
Fetch Productivity Analysis
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'],
    teamId: []
  })
};

fetch('https://api.trackpilots.com/v1/dashboard/productivity-analysis', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
{
  "success": true,
  "statusCode": 200,
  "statusMessage": "Fetched productivity analysis successfully",
  "error": null,
  "data": [
    {
      "user": {
        "userId": "f0ad9ad9-d421-48dc-868d-9760e33e5089",
        "name": "Abirami Kannan",
        "profilePicUrl": "https://trackpilots.s3.amazonaws.com/profile-pic/9b8090ae.png"
      },
      "timeSummary": {
        "activeWorkedTimeInSeconds": 76516,
        "productiveWorkedTimeInSeconds": 56641,
        "unproductiveWorkedTimeInSeconds": 2706,
        "neutralWorkedTimeInSeconds": 17169
      }
    }
  ]
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

Either userId or teamId must be provided. Both cannot be empty.

startDate
string<date-time>
required
Example:

"2026-02-08 00:00:00"

endDate
string<date-time>
required
Example:

"2026-02-08 23:59:59"

timeZone
string
required

IANA timezone of the requester

Example:

"Asia/Kolkata"

userId
string<uuid>[]
required

List of user UUIDs to fetch screenshots for

teamId
string<uuid>[]

List of team UUIDs to fetch screenshots for

Example:
[]

Response

Fetched productivity analysis successfully

success
boolean
Example:

true

statusCode
integer
Example:

200

statusMessage
string
Example:

"Fetched productivity analysis successfully"

error
null
Example:

null

data
object[]