Skip to main content
POST
/
v1
/
report-analysis
/
monthly-summary
Fetch monthly summary
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: JSON.stringify({
    year: 2026,
    month: 1,
    timeZone: 'Asia/Kolkata',
    userId: ['f0ad9ad9-d421-48dc-868d-9760e33e5089'],
    teamId: []
  })
};

fetch('https://api.trackpilots.com/v1/report-analysis/monthly-summary', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
{
  "success": true,
  "statusCode": 200,
  "statusMessage": "Fetched monthly summary successfully",
  "error": null,
  "data": [
    {
      "user": {
        "userId": "f0ad9ad9-d421-48dc-868d-9760e33e5089",
        "name": "Abirami Kannan",
        "profilePicUrl": null,
        "emailId": "abiramikannan2006@gmail.com"
      },
      "monthlySummary": {
        "totalDays": 28,
        "workingDays": 16,
        "completedWorkingDays": 12,
        "upcomingWorkingDays": 4,
        "weekOffDays": 12,
        "weekOffWorkedDays": 2,
        "presentDays": 6,
        "absentDays": 6
      },
      "timeSummary": {
        "totalWorkedTimeInSeconds": 146280,
        "totalActiveWorkedTimeInSeconds": 138900,
        "totalIdleWorkedTimeInSeconds": 7320
      },
      "dailySummary": [
        {
          "date": "2026-02-01",
          "day": "Sunday",
          "attendanceStatus": "PRESENT",
          "totalWorkedTimeInSeconds": 25080,
          "activeWorkedTimeInSeconds": 23580,
          "idleWorkedTimeInSeconds": 1440
        }
      ]
    }
  ]
}

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.

year
integer
required
Required range: 2000 <= x <= 2200
Example:

2026

month
integer
required
Required range: 1 <= x <= 12
Example:

1

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 monthly summary successfully.

success
boolean
Example:

true

statusCode
integer
Example:

200

statusMessage
string
Example:

"Fetched monthly summary successfully"

error
string | null
Example:

null

data
object[]