Bulk create attendance entries

Create one or more attendance entries (time log entries) for employees. Entries must match the reporting method (duration or start-end) and rules of the attendance policy linked to the employee.

Before using this endpoint

  • Read the Explore Attendance API for concepts, usage, rate limits, and permissions.
  • Maximum 100 entries per request.
  • Reporting method:
    • Duration: Use when you only need to log a total amount of time for a day. Send clockInDate (YYYY-MM-DD) and duration (minutes). Maximum 24 hours
    • Start-end: Use when you know the actual start and end times. Send clockInTime (timestamp that includes the date) and optionally clockOutTime. The entry date is taken from clockInTime.
  • Cross-midnight: clockInTime and clockOutTime must be on the same date. Sending an entry where clock-out is on another day than clock-in will return an error. Split cross-midnight work into two entries: one ending at 23:59 and one starting at 00:00 the next day.

Error handling

Pay attention to the following error when creating attendance entries:

  • Error: 400 Bad Request
  • Error message: exception.attendance.entry.overlap
  • Description: One or more attendance entries in the request overlap with existing attendance entries for the employee.
  • How to handle: Do not retry the request. Review the attendance entries being submitted and ensure that duplicate or overlapping entries are not sent

This error indicates a validation issue rather than a temporary failure. Retrying the same request will produce the same result unless the conflicting attendance entries are corrected or removed.

Body Params

Request body for creating attendance entries (max 100 items)

items
array
required
length between 1 and 100
Defaults to [object Object]

One or more attendance entries to create. Each item must conform to either duration reporting (date + duration) or start-end reporting (clock-in and optional clock-out). Maximum 100 entries per request.

items*

Attendance entry create item using start-end reporting (clock-in and optional clock-out).

string
enum
required

Must be attendanceEntry

Allowed:
fields
object
required

Fields for an entry using start-end reporting (clock-in and optional clock-out). Required: employeeId, type, reportingMethod (startEnd), clockInTime. clockOutTime is optional—omit it to create an open (clocked-in) entry.

request_metadata
object

Optional metadata for the request

Responses

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