The WorkedShift data structure represents a shift recorded on a worker’s timesheet. Depending on the worker’s configuration, the hours recorded under a WorkedShift may be processed for deposit via a payment record. If a WorkedShift is attached to a payment record for deposit, the payableDetails.paymentId property will contain that payment’s ID. Note that if the payableDetails.paid property is true, the payment record itself will be available to request via the Payment History API.

{
        workerId: string
        externalWorkerId: string
        workedShiftId: number
        shiftStartAt: {
              effectivePunchAt: string, ISO8601 datetime with time zone
        }
        shiftEndAt: {
              effectivePunchAt: string, ISO8601 datetime with time zone
        }
        payableDetails: {
              totalPayableAmount: string, Money
              paid: boolean
              paymentId: number [optional]
        }
        shiftDurations: {
              shiftDuration: string, ISO8601 duration
              regularTimeWorked: {
                  totalDuration: string, ISO8601 duration
                  totalPayableAmount: string, Money
              }
              overtimeWorked: {
                  totalDuration: string, ISO8601 duration
                  totalPayableAmount: string, Money
              }
              doubleTimeWorked: {
                  totalDuration: string, ISO8601 duration
                  totalPayableAmount: string, Money
              }
        }
}