Fetch attendance summaries

This endpoint returns aggregated attendance summary metrics for one or more employees within a specified date range. Results are returned as a summary per employee per date range and can include total worked hours, payable hours, overtime, breaks, and other attendance metrics (based on the fields you request).

This is a read operation that uses POST because it requires a structured request body (filters, field selection, and pagination parameters).

Before using this endpoint:

  • Explore the Attendance API for more details on usage, rate limits, permissions, and more.
  • You must provide both dateRange and employeeId filters in the request.
  • Only fields mentioned in the fields parameter are returned in the response.
  • Pagination: Use limit and cursor parameters to paginate through results. The cursor value for the next page is returned in response_metadata.next_cursor. To learn more, see Pagination in Bob's API.

Testing notes:

  • Use the testing widget's Try It! option to test this endpoint.
  • Use the Examples > Request Example option to see how to initiate body parameters.
Body Params
fields
array of strings
required
Defaults to /attendanceSummary/employeeId,/attendanceSummary/dateRange,/attendanceSummary/hoursWorked,/attendanceSummary/payableHours

List of field IDs to include in the response. Standard fields are listed above. Custom fields following the pattern /attendanceSummary/field_<number> are also supported. Required: The array must include /attendanceSummary/employeeId.

fields*
filters
array of objects
required
length between 2 and 2
Defaults to [object Object],[object Object]

List of filters to apply. You must provide exactly two filters: 1. One dateRange filter (fieldId: /attendanceSummary/dateRange) with exactly 2 dates [startDate, endDate] 2. One employeeId filter (fieldId: /attendanceSummary/employeeId) with one or more employee IDs

filters*
string
enum
required

Field ID for the filter. Use /attendanceSummary/dateRange for date range filter or /attendanceSummary/employeeId for employee ID filter.

Allowed:
string
enum
required

Filter operator. Only equals is supported.

Allowed:
values
array of strings
required

Filter values. For dateRange filter: provide exactly 2 dates [startDate, endDate] in ISO format (YYYY-MM-DD). For employeeId filter: provide one or more employee IDs.

values*
string
enum
required

Field ID for the filter. Use /attendanceSummary/dateRange for date range filter or /attendanceSummary/employeeId for employee ID filter.

Allowed:
string
enum
required

Filter operator. Only equals is supported.

Allowed:
values
array of strings
required

Filter values. For dateRange filter: provide exactly 2 dates [startDate, endDate] in ISO format (YYYY-MM-DD). For employeeId filter: provide one or more employee IDs.

values*
integer
1 to 1000
Defaults to 100

Maximum number of items to return per page. Defaults to 100.

string

Opaque cursor for pagination. Use the value from response_metadata.next_cursor in the previous response to get the next page. Do not provide in the first request.

boolean
Defaults to true

This property is not currently supported for this endpoint. Whether to include human-readable formatted values alongside raw values in the response

Responses

Language
Credentials
:
URL
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json