For the complete documentation index, see llms.txt. This page is also available as Markdown.

Timesheets

Timesheet related operations

Retrieves paginated timesheet entries (optional filter by employee email)

get
Authorizations
happyforceAPIKeystringRequired

API Key for Happyforce API

Query parameters
emailstringOptional

Employee email; omit to return entries for all employees (paginated)

frominteger · int32Optional

Pagination start index (inclusive)

Default: 0Example: 0
tointeger · int32Optional

Pagination end index (exclusive). Page size is (to - from).

Default: 10Example: 10
dateFromstring · date-timeOptional

Start date filter (ddMMyyyy format)

dateTostring · date-timeOptional

End date filter (ddMMyyyy format)

Responses
200

OK

*/*
frominteger · int32Optional
tointeger · int32Optional
totalinteger · int32Optional
noContentbooleanOptional
get/api/v1/public/company/timesheets
GET /api/v1/public/company/timesheets HTTP/1.1
Host: api.happyforce.com
happyforceAPIKey: YOUR_API_KEY
Accept: */*
200

OK

{
  "from": 1,
  "to": 1,
  "total": 1,
  "noContent": true,
  "results": [
    {
      "email": "text",
      "externalId": "text",
      "timeZone": "text",
      "id": "64f8a0e2d5b7c9a1e3f4a5b6",
      "startTime": "2026-01-01T00:00:00.000Z",
      "endTime": "2026-01-01T00:00:00.000Z",
      "active": true,
      "breaks": [
        {
          "startTime": "2026-01-01T00:00:00.000Z",
          "endTime": "2026-01-01T00:00:00.000Z",
          "duration": 1
        }
      ],
      "periodType": "ACTIVE",
      "changeHistory": [
        {
          "startTime": "2026-01-01T00:00:00.000Z",
          "endTime": "2026-01-01T00:00:00.000Z",
          "breaks": [
            {
              "startTime": "2026-01-01T00:00:00.000Z",
              "endTime": "2026-01-01T00:00:00.000Z",
              "duration": 1
            }
          ],
          "periodType": "ACTIVE",
          "changeReason": "text",
          "changedBy": {
            "email": "text",
            "externalId": "text"
          },
          "changedAt": "2026-01-01T00:00:00.000Z"
        }
      ]
    }
  ]
}

Retrieves paginated deleted timesheet entries (optional filter by employee email)

get
Authorizations
happyforceAPIKeystringRequired

API Key for Happyforce API

Query parameters
emailstringOptional

Employee email; omit to return entries for all employees (paginated)

frominteger · int32Optional

Pagination start index (inclusive)

Default: 0Example: 0
tointeger · int32Optional

Pagination end index (exclusive). Page size is (to - from).

Default: 10Example: 10
dateFromstring · date-timeOptional

Start date filter (ddMMyyyy format)

dateTostring · date-timeOptional

End date filter (ddMMyyyy format)

Responses
200

OK

*/*
frominteger · int32Optional
tointeger · int32Optional
totalinteger · int32Optional
noContentbooleanOptional
get/api/v1/public/company/timesheets/deleted
GET /api/v1/public/company/timesheets/deleted HTTP/1.1
Host: api.happyforce.com
happyforceAPIKey: YOUR_API_KEY
Accept: */*
200

OK

{
  "from": 1,
  "to": 1,
  "total": 1,
  "noContent": true,
  "results": [
    {
      "email": "text",
      "externalId": "text",
      "timeZone": "text",
      "id": "64f8a0e2d5b7c9a1e3f4a5b6",
      "originalTimesheetId": "64f8a0e2d5b7c9a1e3f4a5b6",
      "startTime": "2026-01-01T00:00:00.000Z",
      "endTime": "2026-01-01T00:00:00.000Z",
      "breaks": [
        {
          "startTime": "2026-01-01T00:00:00.000Z",
          "endTime": "2026-01-01T00:00:00.000Z",
          "duration": 1
        }
      ],
      "periodType": "ACTIVE",
      "changeHistory": [
        {
          "startTime": "2026-01-01T00:00:00.000Z",
          "endTime": "2026-01-01T00:00:00.000Z",
          "breaks": [
            {
              "startTime": "2026-01-01T00:00:00.000Z",
              "endTime": "2026-01-01T00:00:00.000Z",
              "duration": 1
            }
          ],
          "periodType": "ACTIVE",
          "changeReason": "text",
          "changedBy": {
            "email": "text",
            "externalId": "text"
          },
          "changedAt": "2026-01-01T00:00:00.000Z"
        }
      ],
      "deletedAt": "2026-01-01T00:00:00.000Z",
      "deletedBy": "64f8a0e2d5b7c9a1e3f4a5b6",
      "deletedReason": "text"
    }
  ]
}

Last updated