/v2/api/entity base and authenticated with a Bearer token.staff_id and time are required; every other field is optional. The combination of time + staff_id must be unique — posting the same pair twice fails.status and source_type value tables below are the recognized sets; note the API does not currently validate them on input — an unrecognized value is accepted (stored coerced), not rejected.status defaults to draft when omitted:| Value | Meaning |
|---|---|
| draft | Draft |
| sign_in | Sign In |
| sign_out | Sign Out |
| repeated_sign_in | Repeated Sign In |
| repeated_sign_out | Repeated Sign Out |
| invalid | Invalid |
| unknown_employee | Unknown Employee |
source_type, when supplied, is one of:| Value | Meaning |
|---|---|
| machine | Machine |
| supervisor | Supervisor |
| file | File |
| self | Self |
curl --location --globoff 'https://.daftra.com/v2/api/entity/attendance_log' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer ' \
--header 'apikey: ' \
--header 'Content-Type: application/json' \
--data '{
"staff_id": 1,
"time": "2026-07-10 08:00:00"
}'{
"message": "Attendance Log Added Successfully",
"id": 4
}