Overtime

Logs overtime on an allowance type that has overtime logging switched on. The entry follows the member's normal approval chain and its approvers are notified; it is credited once approved. An admin can log for another active member of the workspace with member_id, otherwise it is logged for the API key's member. Send the same submission_id again to get the existing entry back instead of a second one. Fails with 409 when that submission_id was already used for the same member with a different allowance type, date or amount.

post/overtime-entries

Request

  • Base URL
    https://api.absentify.com/api/v1
  • URL
    https://api.absentify.com/api/v1/overtime-entries
  • Auth
    API key in header X-API-KEY

Request body

member_idstring uuid

The member the overtime was worked by. Defaults to the API key's member. Only admins may name someone else.

allowance_type_idstring uuid required

The allowance type the overtime is credited to. Overtime logging has to be switched on for it.

datestring required

The day the overtime was worked, YYYY-MM-DD. Today or a day in the past.

amountnumber required

Days (0.5 or 1) when allowance_unit is days, whole MINUTES when it is hours (for example 90 = 1 hour 30 minutes).

commentstring nullable

A note for the approvers, at most 2500 characters.

submission_idstring

Makes a retry safe: the same value for the same member with the same allowance type, date and amount returns the existing entry. With a different allowance type, date or amount it fails with 409. Generated when omitted, in which case a retry logs a second entry.

Response

Successful response

idinteger required
allowance_type_idstring required
allowance_unit'days' | 'hours' required

The unit of the allowance type. Amounts are in days for days and in MINUTES for hours.

datestring required

The day the overtime was worked, YYYY-MM-DD.

amountnumber required

The amount that was logged. Days (0.5 or 1) when allowance_unit is days, whole MINUTES when it is hours (for example 90 = 1 hour 30 minutes).

recognized_amountnumber required

The amount an approver recognized, never more than amount. Equal to amount until someone lowers it. Days (0.5 or 1) when allowance_unit is days, whole MINUTES when it is hours (for example 90 = 1 hour 30 minutes).

day_kind'WORKDAY' | 'DAY_OFF' | 'PUBLIC_HOLIDAY' required

What kind of day it was when the entry was logged.

factornumber required

The multiplier applied to the recognized amount, fixed when the entry was logged.

credit_expiry_datestring nullable required

The LAST day (inclusive, YYYY-MM-DD) the credit can still be used, or null when the credit has no expiry of its own; it then follows the allowance's carry-over at the end of the year.

commentstring nullable required
status'PENDING' | 'APPROVED' | 'DECLINED' | 'CANCELED' required
decided_atstring nullable required
created_atstring required
canceled_atstring nullable required
decline_reasonstring nullable required

The reason given when the entry was declined, also when an admin declined for the approver.

credited_amountnumber nullable required

What was credited to the allowance: the recognized amount times factor, as booked. Null while there is no credit. Days (rounded to two decimals, for example 0.75 or 1.5) when allowance_unit is days, whole MINUTES when it is hours.

credit_removedboolean required

True when the entry is approved but its credit was deleted from the allowance afterwards.

Changes