Documentation ¶
Index ¶
- type API
- func (s *API) ActivateEmployee(request ActivateEmployeeRequest) (data ActivateEmployeeResponse, err error)
- func (s *API) ApproveTimeoffRequest(id string) (data ApproveTimeoffResponse, err error)
- func (s *API) CancelTimeoffRequest(id string) (data CancelTimeoffResponse, err error)
- func (s *API) CreateAvailability(request CreateAvailabilityRequest) (data CreateAvailabilityResponse, err error)
- func (s *API) CreateEmployee(request CreateEmployeeRequest) (data CreateEmployeeResponse, err error)
- func (s *API) CreateJobsite(request CreateJobsiteRequest) (data CreateJobsiteResponse, err error)
- func (s *API) CreatePosition(request CreatePositionRequest) (data CreatePositionResponse, err error)
- func (s *API) CreateSchedule(request CreateScheduleRequest) (data CreateScheduleResponse, err error)
- func (s *API) CreateShift(request CreateShiftRequest) (data CreateShiftResponse, err error)
- func (s *API) CreateTimeoffRequest(request CreateTimeoffRequest) (data CreateTimeoffResponse, err error)
- func (s *API) CreateTimesheet(request CreateTimesheetRequest) (data CreateTimesheetResponse, err error)
- func (s *API) DeactivateEmployee(request DeactivateEmployeeRequest) (data DeactivateEmployeeResponse, err error)
- func (s *API) DeleteAvailability(id string) (data DeleteAvailabilityResponse, err error)
- func (s *API) DeleteJobsite(id string) (data DeleteJobsiteResponse, err error)
- func (s *API) DeletePosition(id string) (data DeletePositionResponse, err error)
- func (s *API) DeleteSchedule(id string) (data DeleteScheduleResponse, err error)
- func (s *API) DeleteShift(id string) (data DeleteShiftResponse, err error)
- func (s *API) DeleteTimeoffRequest(id string) (data DeleteTimeoffResponse, err error)
- func (s *API) DeleteTimesheet(id string) (data DeleteTimesheetResponse, err error)
- func (s *API) DenyTimeoffRequest(id string) (data DenyTimeoffResponse, err error)
- func (s *API) GetAllAvailabilities(params map[string]zoho.Parameter) (data GetAvailabilitiesResponse, err error)
- func (s *API) GetAllEmployees(params map[string]zoho.Parameter) (data GetEmployeesResponse, err error)
- func (s *API) GetAllJobsites(params map[string]zoho.Parameter) (data GetJobsitesResponse, err error)
- func (s *API) GetAllPositions(params map[string]zoho.Parameter) (data GetPositionsResponse, err error)
- func (s *API) GetAllSchedules(params map[string]zoho.Parameter) (data GetSchedulesResponse, err error)
- func (s *API) GetAllShifts(params map[string]zoho.Parameter) (data GetShiftsResponse, err error)
- func (s *API) GetAllTimeoffRequests(params map[string]zoho.Parameter) (data GetTimeoffsResponse, err error)
- func (s *API) GetAllTimesheets(params map[string]zoho.Parameter) (data GetTimesheetsResponse, err error)
- func (s *API) GetEmployee(id string) (data GetEmployeeResponse, err error)
- func (s *API) GetShift(id string) (data GetShiftResponse, err error)
- func (s *API) GetTimeoffRequest(id string) (data GetTimeoffResponse, err error)
- func (s *API) GetTimesheet(id string) (data GetTimesheetResponse, err error)
- func (s *API) InviteEmployee(request InviteEmployeeRequest) (data InviteEmployeeResponse, err error)
- func (s *API) UpdateAvailability(id string, request UpdateAvailabilityRequest) (data UpdateAvailabilityResponse, err error)
- func (s *API) UpdateEmployee(id string, request UpdateEmployeeRequest) (data UpdateEmployeeResponse, err error)
- func (s *API) UpdateJobsite(id string, request UpdateJobsiteRequest) (data UpdateJobsiteResponse, err error)
- func (s *API) UpdatePosition(id string, request UpdatePositionRequest) (data UpdatePositionResponse, err error)
- func (s *API) UpdateSchedule(id string, request UpdateScheduleRequest) (data UpdateScheduleResponse, err error)
- func (s *API) UpdateShift(id string, request UpdateShiftRequest) (data UpdateShiftResponse, err error)
- func (s *API) UpdateTimeoff(id string, request UpdateTimeoffRequest) (data UpdateTimeoffResponse, err error)
- func (s *API) UpdateTimesheet(id string, request UpdateTimesheetRequest) (data UpdateTimesheetResponse, err error)
- type ActivateEmployeeRequest
- type ActivateEmployeeResponse
- type ApproveTimeoffResponse
- type CancelTimeoffResponse
- type CreateAvailabilityRequest
- type CreateAvailabilityResponse
- type CreateEmployeeRequest
- type CreateEmployeeResponse
- type CreateJobsiteRequest
- type CreateJobsiteResponse
- type CreatePositionRequest
- type CreatePositionResponse
- type CreateScheduleRequest
- type CreateScheduleResponse
- type CreateShiftRequest
- type CreateShiftResponse
- type CreateTimeoffRequest
- type CreateTimeoffResponse
- type CreateTimesheetRequest
- type CreateTimesheetResponse
- type DeactivateEmployeeRequest
- type DeactivateEmployeeResponse
- type DeleteAvailabilityResponse
- type DeleteJobsiteResponse
- type DeletePositionResponse
- type DeleteScheduleResponse
- type DeleteShiftResponse
- type DeleteTimeoffResponse
- type DeleteTimesheetResponse
- type DenyTimeoffResponse
- type GetAvailabilitiesResponse
- type GetEmployeeResponse
- type GetEmployeesResponse
- type GetJobsitesResponse
- type GetPositionsResponse
- type GetSchedulesResponse
- type GetShiftResponse
- type GetShiftsResponse
- type GetTimeoffResponse
- type GetTimeoffsResponse
- type GetTimesheetResponse
- type GetTimesheetsResponse
- type InviteEmployeeRequest
- type InviteEmployeeResponse
- type Module
- type UpdateAvailabilityRequest
- type UpdateAvailabilityResponse
- type UpdateEmployeeRequest
- type UpdateEmployeeResponse
- type UpdateJobsiteRequest
- type UpdateJobsiteResponse
- type UpdatePositionRequest
- type UpdatePositionResponse
- type UpdateScheduleRequest
- type UpdateScheduleResponse
- type UpdateShiftRequest
- type UpdateShiftResponse
- type UpdateTimeoffRequest
- type UpdateTimeoffResponse
- type UpdateTimesheetRequest
- type UpdateTimesheetResponse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type API ¶
API is used for interacting with the Zoho Shifts API the exposed methods are primarily access to Shifts modules which provide access to Shifts Methods
func (*API) ActivateEmployee ¶
func (s *API) ActivateEmployee(request ActivateEmployeeRequest) (data ActivateEmployeeResponse, err error)
ActivateEmployee activates the employee accounts of the employee IDs provided https://www.zoho.com/shifts/api/v1/employees-api/#activate-employees
func (*API) ApproveTimeoffRequest ¶
func (s *API) ApproveTimeoffRequest(id string) (data ApproveTimeoffResponse, err error)
ApproveTimeoffRequest approves the timeoff request with the given id https://www.zoho.com/shifts/api/v1/time-off-requests-api/#approve-a-time-off-request
func (*API) CancelTimeoffRequest ¶
func (s *API) CancelTimeoffRequest(id string) (data CancelTimeoffResponse, err error)
CancelTimeoffRequest cancels the timeoff request with the given id https://www.zoho.com/shifts/api/v1/time-off-requests-api/#cancel-a-time-off-request
func (*API) CreateAvailability ¶
func (s *API) CreateAvailability(request CreateAvailabilityRequest) (data CreateAvailabilityResponse, err error)
CreateAvailability adds a new record to the list of available shifts https://www.zoho.com/shifts/api/v1/availability-api/#create-an-availability
func (*API) CreateEmployee ¶
func (s *API) CreateEmployee(request CreateEmployeeRequest) (data CreateEmployeeResponse, err error)
CreateEmployee adds a new record to the list of employees https://www.zoho.com/shifts/api/v1/employees-api/#create-an-employee
func (*API) CreateJobsite ¶
func (s *API) CreateJobsite(request CreateJobsiteRequest) (data CreateJobsiteResponse, err error)
CreateJobsite adds a new record to the list of job sites https://www.zoho.com/shifts/api/v1/job-sites-api/#create-a-job-site
func (*API) CreatePosition ¶
func (s *API) CreatePosition(request CreatePositionRequest) (data CreatePositionResponse, err error)
CreatePosition adds a new record to the list of positions https://www.zoho.com/shifts/api/v1/positions-api/#create-a-position
func (*API) CreateSchedule ¶
func (s *API) CreateSchedule(request CreateScheduleRequest) (data CreateScheduleResponse, err error)
CreateSchedule adds a new record to the list of schedules https://www.zoho.com/shifts/api/v1/schedules-api/#create-a-schedule
func (*API) CreateShift ¶
func (s *API) CreateShift(request CreateShiftRequest) (data CreateShiftResponse, err error)
CreateShift adds a new record to the list of shifts https://www.zoho.com/shifts/api/v1/shifts-api/#create-a-shift
func (*API) CreateTimeoffRequest ¶
func (s *API) CreateTimeoffRequest(request CreateTimeoffRequest) (data CreateTimeoffResponse, err error)
CreateTimeoffRequest adds a new record to the list of employee timeoff requests https://www.zoho.com/shifts/api/v1/time-off-requests-api/#create-a-time-off-request
func (*API) CreateTimesheet ¶
func (s *API) CreateTimesheet(request CreateTimesheetRequest) (data CreateTimesheetResponse, err error)
CreateTimesheet adds a new record to the list of employee timesheets https://www.zoho.com/shifts/api/v1/timesheets-api/#create-a-time-entry
func (*API) DeactivateEmployee ¶
func (s *API) DeactivateEmployee(request DeactivateEmployeeRequest) (data DeactivateEmployeeResponse, err error)
DeactivateEmployee deactivates the employee accounts of the employee IDs provided https://www.zoho.com/shifts/api/v1/employees-api/#deactivate-employees
func (*API) DeleteAvailability ¶
func (s *API) DeleteAvailability(id string) (data DeleteAvailabilityResponse, err error)
DeleteAvailability deletes the availability record with the given ID https://www.zoho.com/shifts/api/v1/availability-api/#delete-an-availability
func (*API) DeleteJobsite ¶
func (s *API) DeleteJobsite(id string) (data DeleteJobsiteResponse, err error)
DeleteJobsite deletes the job site record with the given ID https://www.zoho.com/shifts/api/v1/job-sites-api/#delete-a-job-site
func (*API) DeletePosition ¶
func (s *API) DeletePosition(id string) (data DeletePositionResponse, err error)
DeletePosition deletes the schedule record with the given ID https://www.zoho.com/shifts/api/v1/positions-api/#delete-a-position
func (*API) DeleteSchedule ¶
func (s *API) DeleteSchedule(id string) (data DeleteScheduleResponse, err error)
DeleteSchedule deletes the schedule record with the given ID https://www.zoho.com/shifts/api/v1/schedules-api/#delete-a-schedule
func (*API) DeleteShift ¶
func (s *API) DeleteShift(id string) (data DeleteShiftResponse, err error)
DeleteShift deletes the shift record with the given ID https://www.zoho.com/shifts/api/v1/shifts-api/#delete-a-shift
func (*API) DeleteTimeoffRequest ¶
func (s *API) DeleteTimeoffRequest(id string) (data DeleteTimeoffResponse, err error)
DeleteTimeoffRequest deletes the timeoff request record with the given ID https://www.zoho.com/shifts/api/v1/time-off-requests-api/#delete-a-time-off-request
func (*API) DeleteTimesheet ¶
func (s *API) DeleteTimesheet(id string) (data DeleteTimesheetResponse, err error)
DeleteTimesheet deletes the timesheet record with the given ID https://www.zoho.com/shifts/api/v1/timesheets-api/#delete-a-time-entry
func (*API) DenyTimeoffRequest ¶
func (s *API) DenyTimeoffRequest(id string) (data DenyTimeoffResponse, err error)
DenyTimeoffRequest denies the timeoff request with the given id https://www.zoho.com/shifts/api/v1/time-off-requests-api/#deny-a-time-off-request
func (*API) GetAllAvailabilities ¶
func (s *API) GetAllAvailabilities(params map[string]zoho.Parameter) (data GetAvailabilitiesResponse, err error)
GetAllAvailabilities returns a list of all employee availabilities https://www.zoho.com/shifts/api/v1/availability-api/#get-all-availabilities
func (*API) GetAllEmployees ¶
func (s *API) GetAllEmployees(params map[string]zoho.Parameter) (data GetEmployeesResponse, err error)
GetAllEmployees returns a list of all employees https://www.zoho.com/shifts/api/v1/employees-api/#get-all-employees
func (*API) GetAllJobsites ¶
func (s *API) GetAllJobsites(params map[string]zoho.Parameter) (data GetJobsitesResponse, err error)
GetAllJobsites returns a list of all job sites https://www.zoho.com/shifts/api/v1/job-sites-api/#get-all-job-sites
func (*API) GetAllPositions ¶
func (s *API) GetAllPositions(params map[string]zoho.Parameter) (data GetPositionsResponse, err error)
GetAllPositions returns a list of all position https://www.zoho.com/shifts/api/v1/positions-api/#get-all-positions
func (*API) GetAllSchedules ¶
func (s *API) GetAllSchedules(params map[string]zoho.Parameter) (data GetSchedulesResponse, err error)
GetAllSchedules returns a list of all schedules https://www.zoho.com/shifts/api/v1/schedules-api/#get-all-schedules
func (*API) GetAllShifts ¶
GetAllShifts returns a list of all shifts https://www.zoho.com/shifts/api/v1/shifts-api/#get-all-shifts
func (*API) GetAllTimeoffRequests ¶
func (s *API) GetAllTimeoffRequests(params map[string]zoho.Parameter) (data GetTimeoffsResponse, err error)
GetAllTimeoffRequests returns a list of all employee timeoff requests https://www.zoho.com/shifts/api/v1/time-off-requests-api/#get-all-time-off-requests
func (*API) GetAllTimesheets ¶
func (s *API) GetAllTimesheets(params map[string]zoho.Parameter) (data GetTimesheetsResponse, err error)
GetAllTimesheets returns a list of all employee timesheets https://www.zoho.com/shifts/api/v1/timesheets-api/#get-all-time-entries
func (*API) GetEmployee ¶
func (s *API) GetEmployee(id string) (data GetEmployeeResponse, err error)
GetEmployee retrieves the employee record with the given ID https://www.zoho.com/shifts/api/v1/employees-api/#get-an-employee
func (*API) GetShift ¶
func (s *API) GetShift(id string) (data GetShiftResponse, err error)
GetShift retrieves the shift record with the given ID https://www.zoho.com/shifts/api/v1/shifts-api/#get-a-shift
func (*API) GetTimeoffRequest ¶
func (s *API) GetTimeoffRequest(id string) (data GetTimeoffResponse, err error)
GetTimeoffRequest retrieves the timeoff request record with the given ID https://www.zoho.com/shifts/api/v1/time-off-requests-api/#get-a-time-off-request
func (*API) GetTimesheet ¶
func (s *API) GetTimesheet(id string) (data GetTimesheetResponse, err error)
GetTimesheet retrieves the timesheet record with the given ID https://www.zoho.com/shifts/api/v1/timesheets-api/#get-a-time-entry
func (*API) InviteEmployee ¶
func (s *API) InviteEmployee(request InviteEmployeeRequest) (data InviteEmployeeResponse, err error)
InviteEmployee sends an invite to the employee accounts of the employee IDs provided https://www.zoho.com/shifts/api/v1/employees-api/#invite-employees
func (*API) UpdateAvailability ¶
func (s *API) UpdateAvailability(id string, request UpdateAvailabilityRequest) (data UpdateAvailabilityResponse, err error)
UpdateAvailability modifies the availability with the given ID https://www.zoho.com/shifts/api/v1/availability-api/#update-an-availability
func (*API) UpdateEmployee ¶
func (s *API) UpdateEmployee(id string, request UpdateEmployeeRequest) (data UpdateEmployeeResponse, err error)
UpdateEmployee modifies the employee with the given ID https://www.zoho.com/shifts/api/v1/employees-api/#update-an-employee
func (*API) UpdateJobsite ¶
func (s *API) UpdateJobsite(id string, request UpdateJobsiteRequest) (data UpdateJobsiteResponse, err error)
UpdateJobsite modifies the job site with the given ID https://www.zoho.com/shifts/api/v1/job-sites-api/#update-a-job-site
func (*API) UpdatePosition ¶
func (s *API) UpdatePosition(id string, request UpdatePositionRequest) (data UpdatePositionResponse, err error)
UpdatePosition modifies the position with the given ID https://www.zoho.com/shifts/api/v1/positions-api/#update-a-position
func (*API) UpdateSchedule ¶
func (s *API) UpdateSchedule(id string, request UpdateScheduleRequest) (data UpdateScheduleResponse, err error)
UpdateSchedule modifies the schedule with the given ID https://www.zoho.com/shifts/api/v1/schedules-api/#update-a-schedule
func (*API) UpdateShift ¶
func (s *API) UpdateShift(id string, request UpdateShiftRequest) (data UpdateShiftResponse, err error)
UpdateShift modifies the shift with the given ID https://www.zoho.com/shifts/api/v1/shifts-api/#update-a-shift
func (*API) UpdateTimeoff ¶
func (s *API) UpdateTimeoff(id string, request UpdateTimeoffRequest) (data UpdateTimeoffResponse, err error)
UpdateTimeoffRequest modifies the timeoff request with the given ID https://www.zoho.com/shifts/api/v1/time-off-requests-api/#update-a-time-off-request
func (*API) UpdateTimesheet ¶
func (s *API) UpdateTimesheet(id string, request UpdateTimesheetRequest) (data UpdateTimesheetResponse, err error)
UpdateTimesheet modifies the timesheet with the given ID https://www.zoho.com/shifts/api/v1/timesheets-api/#update-a-time-entry
type ActivateEmployeeRequest ¶
type ActivateEmployeeRequest struct {
Employees []string `json:"employees"` // required
}
type ActivateEmployeeResponse ¶
type ActivateEmployeeResponse struct {
Message string `json:"message,omitempty"`
}
type ApproveTimeoffResponse ¶
type ApproveTimeoffResponse struct { ID string `json:"id,omitempty"` StartDate time.Time `json:"start_date,omitempty"` EndDate time.Time `json:"end_date,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Employee string `json:"employee,omitempty"` RequestedByID string `json:"requested_by_id,omitempty"` RequestedBy string `json:"requested_by,omitempty"` TypeID string `json:"type_id,omitempty"` Type string `json:"type,omitempty"` DayType string `json:"day_type,omitempty"` Duration float64 `json:"duration,omitempty"` Status string `json:"status,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` IsPaid bool `json:"is_paid,omitempty"` Reason string `json:"reason,omitempty"` ApproverID string `json:"approver_id,omitempty"` Approver string `json:"approver,omitempty"` ApprovalRespAt time.Time `json:"approval_resp_at,omitempty"` CancelledAt time.Time `json:"cancelled_at,omitempty"` UpdatedAt time.Time `json:"updated_at,omitempty"` Comments []struct { CommentID string `json:"comment_id,omitempty"` Comment string `json:"comment,omitempty"` CommenterID string `json:"commenter_id,omitempty"` Commenter string `json:"commenter,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` } `json:"comments,omitempty"` }
type CancelTimeoffResponse ¶
type CancelTimeoffResponse struct { ID string `json:"id,omitempty"` StartDate time.Time `json:"start_date,omitempty"` EndDate time.Time `json:"end_date,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Employee string `json:"employee,omitempty"` RequestedByID string `json:"requested_by_id,omitempty"` RequestedBy string `json:"requested_by,omitempty"` TypeID string `json:"type_id,omitempty"` Type string `json:"type,omitempty"` DayType string `json:"day_type,omitempty"` Duration float64 `json:"duration,omitempty"` Status string `json:"status,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` IsPaid bool `json:"is_paid,omitempty"` Reason string `json:"reason,omitempty"` ApproverID string `json:"approver_id,omitempty"` Approver string `json:"approver,omitempty"` ApprovalRespAt time.Time `json:"approval_resp_at,omitempty"` CancelledAt time.Time `json:"cancelled_at,omitempty"` UpdatedAt time.Time `json:"updated_at,omitempty"` Comments []struct { CommentID string `json:"comment_id,omitempty"` Comment string `json:"comment,omitempty"` CommenterID string `json:"commenter_id,omitempty"` Commenter string `json:"commenter,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` } `json:"comments,omitempty"` }
type CreateAvailabilityRequest ¶
type CreateAvailabilityRequest struct { EmployeeID string `json:"employee_id"` // required StartTime time.Time `json:"start_time"` // required EndTime time.Time `json:"end_time"` // required Preference string `json:"preference"` // required: preferred, unavailable Notes string `json:"notes,omitempty"` }
type CreateAvailabilityResponse ¶
type CreateAvailabilityResponse struct { ID string `json:"id,omitempty"` EmployeeID string `json:"employee_id,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` Preference string `json:"preference,omitempty"` Notes string `json:"notes,omitempty"` }
type CreateEmployeeRequest ¶
type CreateEmployeeRequest struct { FirstName string `json:"first_name"` // required LastName string `json:"last_name,omitempty"` WorkEmail string `json:"work_email,omitempty"` Mobile string `json:"mobile,omitempty"` MobileCountryCode string `json:"mobile_country_code,omitempty"` Schedules []struct { ID string `json:"id,omitempty"` } `json:"schedules"` // required Positions []struct { ID string `json:"id,omitempty"` } `json:"positions,omitempty"` Timezone string `json:"timezone"` // required AccessLevelID string `json:"access_level_id,omitempty"` SendInvitation bool `json:"send_invitation,omitempty"` HourlyRate int `json:"hourly_rate,omitempty"` HireDate string `json:"hire_date,omitempty"` ExternalEmployeeID string `json:"external_employee_id,omitempty"` HideFromSchedule bool `json:"hide_from_schedule,omitempty"` OvertimeRuleID string `json:"overtime_rule_id,omitempty"` EmploymentType string `json:"employment_type,omitempty"` MaxHrsWeek int `json:"max_hrs_week,omitempty"` MinHrsWeek int `json:"min_hrs_week,omitempty"` MaxHrsDay int `json:"max_hrs_day,omitempty"` MaxDaysWeek int `json:"max_days_week,omitempty"` MaxShiftsDay int `json:"max_shifts_day,omitempty"` }
type CreateEmployeeResponse ¶
type CreateEmployeeResponse struct { ID string `json:"id,omitempty"` FirstName string `json:"first_name,omitempty"` LastName string `json:"last_name,omitempty"` WorkEmail string `json:"work_email,omitempty"` Mobile string `json:"mobile,omitempty"` MobileCountryCode string `json:"mobile_country_code,omitempty"` Schedules []struct { ID string `json:"id,omitempty"` } `json:"schedules,omitempty"` Positions []struct { ID string `json:"id,omitempty"` } `json:"positions,omitempty"` Timezone string `json:"timezone,omitempty"` AccessLevelID string `json:"access_level_id,omitempty"` Status string `json:"status,omitempty"` InviteStatus string `json:"invite_status,omitempty"` HireDate string `json:"hire_date,omitempty"` ExternalEmployeeID string `json:"external_employee_id,omitempty"` HideFromSchedule bool `json:"hide_from_schedule,omitempty"` OvertimeRuleID string `json:"overtime_rule_id,omitempty"` EmploymentType string `json:"employment_type,omitempty"` MaxHrsWeek int `json:"max_hrs_week,omitempty"` MinHrsWeek int `json:"min_hrs_week,omitempty"` MaxHrsDay int `json:"max_hrs_day,omitempty"` MaxDaysWeek int `json:"max_days_week,omitempty"` MaxShiftsDay int `json:"max_shifts_day,omitempty"` }
type CreateJobsiteRequest ¶
type CreateJobsiteRequest struct { Name string `json:"name"` // required Schedules []struct { ID string `json:"id,omitempty"` } `json:"schedules,omitempty"` Address string `json:"address,omitempty"` Latitude string `json:"latitude,omitempty"` Longitude string `json:"longitude,omitempty"` Notes string `json:"notes,omitempty"` }
type CreateJobsiteResponse ¶
type CreateJobsiteResponse struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` Schedules []struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` } `json:"schedules,omitempty"` Address string `json:"address,omitempty"` Latitude string `json:"latitude,omitempty"` Longitude string `json:"longitude,omitempty"` Notes string `json:"notes,omitempty"` }
type CreatePositionRequest ¶
type CreatePositionRequest struct { Name string `json:"name"` // required Color string `json:"color,omitempty"` // red, pink, magenta, purple, deep-purple, indigo, light-violet, blue, light-blue, cyan, muted-green, teal, green, light-green, lime, yellow, amber, orange, deep-orange, brown, grey, blue-grey Schedules []struct { ID string `json:"id,omitempty"` } `json:"schedules,omitempty"` }
type CreatePositionResponse ¶
type CreateScheduleRequest ¶
type CreateScheduleResponse ¶
type CreateShiftRequest ¶
type CreateShiftRequest struct { StartTime time.Time `json:"start_time"` // required EndTime time.Time `json:"end_time"` // required EmployeeID string `json:"employee_id,omitempty"` // empty creates an open shift Count int `json:"count,omitempty"` ScheduleID string `json:"schedule_id"` // required PositionID string `json:"position_id"` // required JobSiteID string `json:"job_site_id,omitempty"` Notes string `json:"notes,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` } `json:"breaks,omitempty"` }
type CreateShiftResponse ¶
type CreateShiftResponse struct { ID string `json:"id,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Count int `json:"count,omitempty"` ScheduleID string `json:"schedule_id,omitempty"` PositionID string `json:"position_id,omitempty"` JobSiteID string `json:"job_site_id,omitempty"` Duration float64 `json:"duration,omitempty"` BreakDuration float64 `json:"break_duration,omitempty"` Notes string `json:"notes,omitempty"` IsPublished bool `json:"is_published,omitempty"` IsConfirmed bool `json:"is_confirmed,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` IsPaid bool `json:"is_paid,omitempty"` } `json:"breaks,omitempty"` }
type CreateTimeoffRequest ¶
type CreateTimeoffRequest struct { EmployeeID string `json:"employee_id,omitempty"` StartDate time.Time `json:"start_date"` // required EndDate time.Time `json:"end_date"` // required TypeID string `json:"type_id"` // required DayType string `json:"day_type"` // required: all_day, partial Reason string `json:"reason,omitempty"` }
type CreateTimeoffResponse ¶
type CreateTimeoffResponse struct { ID string `json:"id,omitempty"` StartDate time.Time `json:"start_date,omitempty"` EndDate time.Time `json:"end_date,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Employee string `json:"employee,omitempty"` RequestedByID string `json:"requested_by_id,omitempty"` RequestedBy string `json:"requested_by,omitempty"` TypeID string `json:"type_id,omitempty"` Type string `json:"type,omitempty"` DayType string `json:"day_type,omitempty"` Duration float64 `json:"duration,omitempty"` Status string `json:"status,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` IsPaid bool `json:"is_paid,omitempty"` Reason string `json:"reason,omitempty"` ApproverID string `json:"approver_id,omitempty"` Approver string `json:"approver,omitempty"` ApprovalRespAt time.Time `json:"approval_resp_at,omitempty"` CancelledAt time.Time `json:"cancelled_at,omitempty"` UpdatedAt time.Time `json:"updated_at,omitempty"` Comments []struct { CommentID string `json:"comment_id,omitempty"` Comment string `json:"comment,omitempty"` CommenterID string `json:"commenter_id,omitempty"` Commenter string `json:"commenter,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` } `json:"comments,omitempty"` }
type CreateTimesheetRequest ¶
type CreateTimesheetRequest struct { StartTime time.Time `json:"start_time"` // required EndTime time.Time `json:"end_time,omitempty"` EmployeeID string `json:"employee_id"` // required ScheduleID string `json:"schedule_id"` // required PositionID string `json:"position_id"` // required JobSiteID string `json:"job_site_id,omitempty"` Notes string `json:"notes,omitempty"` ShiftID string `json:"shift_id,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` } `json:"breaks,omitempty"` }
type CreateTimesheetResponse ¶
type CreateTimesheetResponse struct { ID string `json:"id,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Employee string `json:"employee,omitempty"` ScheduleID string `json:"schedule_id,omitempty"` Schedule string `json:"schedule,omitempty"` PositionID string `json:"position_id,omitempty"` Position string `json:"position,omitempty"` JobSiteID string `json:"job_site_id,omitempty"` JobSite string `json:"job_site,omitempty"` Type string `json:"type,omitempty"` Duration float64 `json:"duration,omitempty"` BreakDuration float64 `json:"break_duration,omitempty"` Notes string `json:"notes,omitempty"` Status string `json:"status,omitempty"` TimeoffRequestID string `json:"timeoff_request_id,omitempty"` TimeoffTypeID string `json:"timeoff_type_id,omitempty"` TimeoffType string `json:"timeoff_type,omitempty"` InLat float64 `json:"in_lat,omitempty"` InLng float64 `json:"in_lng,omitempty"` OutLat float64 `json:"out_lat,omitempty"` OutLng float64 `json:"out_lng,omitempty"` Latitude float64 `json:"latitude,omitempty"` Longitude float64 `json:"longitude,omitempty"` ShiftID string `json:"shift_id,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` BreakName string `json:"break_name,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` IsPaid bool `json:"is_paid,omitempty"` } `json:"breaks,omitempty"` }
type DeactivateEmployeeRequest ¶
type DeactivateEmployeeRequest struct {
Employees []string `json:"employees"` // required
}
type DeactivateEmployeeResponse ¶
type DeactivateEmployeeResponse struct {
Message string `json:"message,omitempty"`
}
type DeleteAvailabilityResponse ¶
type DeleteAvailabilityResponse struct {
Message string `json:"message,omitempty"`
}
type DeleteJobsiteResponse ¶
type DeleteJobsiteResponse struct {
Message string `json:"message,omitempty"`
}
type DeletePositionResponse ¶
type DeletePositionResponse struct {
Message string `json:"message,omitempty"`
}
type DeleteScheduleResponse ¶
type DeleteScheduleResponse struct {
Message string `json:"message,omitempty"`
}
type DeleteShiftResponse ¶
type DeleteShiftResponse struct {
Message string `json:"message,omitempty"`
}
type DeleteTimeoffResponse ¶
type DeleteTimeoffResponse struct {
Message string `json:"message,omitempty"`
}
type DeleteTimesheetResponse ¶
type DeleteTimesheetResponse struct {
Message string `json:"message,omitempty"`
}
type DenyTimeoffResponse ¶
type DenyTimeoffResponse struct { ID string `json:"id,omitempty"` StartDate time.Time `json:"start_date,omitempty"` EndDate time.Time `json:"end_date,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Employee string `json:"employee,omitempty"` RequestedByID string `json:"requested_by_id,omitempty"` RequestedBy string `json:"requested_by,omitempty"` TypeID string `json:"type_id,omitempty"` Type string `json:"type,omitempty"` DayType string `json:"day_type,omitempty"` Duration float64 `json:"duration,omitempty"` Status string `json:"status,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` IsPaid bool `json:"is_paid,omitempty"` Reason string `json:"reason,omitempty"` ApproverID string `json:"approver_id,omitempty"` Approver string `json:"approver,omitempty"` ApprovalRespAt time.Time `json:"approval_resp_at,omitempty"` CancelledAt time.Time `json:"cancelled_at,omitempty"` UpdatedAt time.Time `json:"updated_at,omitempty"` Comments []struct { CommentID string `json:"comment_id,omitempty"` Comment string `json:"comment,omitempty"` CommenterID string `json:"commenter_id,omitempty"` Commenter string `json:"commenter,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` } `json:"comments,omitempty"` }
type GetAvailabilitiesResponse ¶
type GetAvailabilitiesResponse struct { Availabilities []struct { ID string `json:"id,omitempty"` EmployeeID string `json:"employee_id,omitempty"` StartTime time.Time `json:"start_time"` EndTime time.Time `json:"end_time"` Preference string `json:"preference,omitempty"` Notes string `json:"notes,omitempty"` } `json:"availabilities,omitempty"` }
type GetEmployeeResponse ¶
type GetEmployeeResponse struct { ID string `json:"id,omitempty"` FirstName string `json:"first_name,omitempty"` LastName string `json:"last_name,omitempty"` WorkEmail string `json:"work_email,omitempty"` Mobile string `json:"mobile,omitempty"` MobileCountryCode string `json:"mobile_country_code,omitempty"` AccessLevelID string `json:"access_level_id,omitempty"` Status string `json:"status,omitempty"` InviteStatus string `json:"invite_status,omitempty"` Schedules []struct { ID string `json:"id,omitempty"` } `json:"schedules,omitempty"` Positions []struct { ID string `json:"id,omitempty"` } `json:"positions,omitempty"` Timezone string `json:"timezone,omitempty"` HireDate string `json:"hire_date,omitempty"` ExternalEmployeeID string `json:"external_employee_id,omitempty"` HideFromSchedule bool `json:"hide_from_schedule,omitempty"` OvertimeRuleID string `json:"overtime_rule_id,omitempty"` EmploymentType string `json:"employment_type,omitempty"` MaxHrsWeek int `json:"max_hrs_week,omitempty"` MinHrsWeek int `json:"min_hrs_week,omitempty"` MaxHrsDay int `json:"max_hrs_day,omitempty"` MaxDaysWeek int `json:"max_days_week,omitempty"` MaxShiftsDay int `json:"max_shifts_day,omitempty"` }
type GetEmployeesResponse ¶
type GetEmployeesResponse struct { Employees []struct { ID string `json:"id,omitempty"` FirstName string `json:"first_name,omitempty"` LastName string `json:"last_name,omitempty"` WorkEmail string `json:"work_email,omitempty"` Mobile string `json:"mobile,omitempty"` MobileCountryCode string `json:"mobile_country_code,omitempty"` AccessLevelID string `json:"access_level_id,omitempty"` Status string `json:"status,omitempty"` InviteStatus string `json:"invite_status,omitempty"` Schedules []struct { ID string `json:"id,omitempty"` } `json:"schedules,omitempty"` Positions []struct { ID string `json:"id,omitempty"` } `json:"positions,omitempty"` } `json:"employees,omitempty"` Meta struct { Count int `json:"count,omitempty"` Limit int `json:"limit,omitempty"` Page int `json:"page,omitempty"` } `json:"meta,omitempty"` }
type GetJobsitesResponse ¶
type GetJobsitesResponse struct { JobSites []struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` Schedules []struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` } `json:"schedules,omitempty"` Address string `json:"address,omitempty"` Latitude string `json:"latitude,omitempty"` Longitude string `json:"longitude,omitempty"` Notes string `json:"notes,omitempty"` } `json:"job_sites,omitempty"` Meta struct { Count int `json:"count,omitempty"` Limit int `json:"limit,omitempty"` Page int `json:"page,omitempty"` } `json:"meta,omitempty"` }
type GetPositionsResponse ¶
type GetPositionsResponse struct { Positions []struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` Color string `json:"color,omitempty"` Schedules []struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` } `json:"schedules,omitempty"` } `json:"positions,omitempty"` }
type GetSchedulesResponse ¶
type GetSchedulesResponse struct { Schedules []struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` Timezone string `json:"timezone,omitempty"` Address string `json:"address,omitempty"` Latitude string `json:"latitude,omitempty"` Longitude string `json:"longitude,omitempty"` } `json:"schedules,omitempty"` }
type GetShiftResponse ¶
type GetShiftResponse struct { ID string `json:"id,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Count int `json:"count,omitempty"` ScheduleID string `json:"schedule_id,omitempty"` PositionID string `json:"position_id,omitempty"` JobSiteID string `json:"job_site_id,omitempty"` Duration float64 `json:"duration,omitempty"` BreakDuration float64 `json:"break_duration,omitempty"` Notes string `json:"notes,omitempty"` IsPublished bool `json:"is_published,omitempty"` IsConfirmed bool `json:"is_confirmed,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` IsPaid bool `json:"is_paid,omitempty"` } `json:"breaks,omitempty"` }
type GetShiftsResponse ¶
type GetShiftsResponse struct { Shifts []struct { ID string `json:"id,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Count int `json:"count,omitempty"` ScheduleID string `json:"schedule_id,omitempty"` PositionID string `json:"position_id,omitempty"` JobSiteID string `json:"job_site_id,omitempty"` Duration float64 `json:"duration,omitempty"` BreakDuration float64 `json:"break_duration,omitempty"` Notes string `json:"notes,omitempty"` IsPublished bool `json:"is_published,omitempty"` IsConfirmed bool `json:"is_confirmed,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` IsPaid bool `json:"is_paid,omitempty"` } `json:"breaks,omitempty"` } `json:"shifts,omitempty"` }
type GetTimeoffResponse ¶
type GetTimeoffResponse struct { ID string `json:"id,omitempty"` StartDate time.Time `json:"start_date,omitempty"` EndDate time.Time `json:"end_date,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Employee string `json:"employee,omitempty"` RequestedByID string `json:"requested_by_id,omitempty"` RequestedBy string `json:"requested_by,omitempty"` TypeID string `json:"type_id,omitempty"` Type string `json:"type,omitempty"` DayType string `json:"day_type,omitempty"` Duration float64 `json:"duration,omitempty"` Status string `json:"status,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` IsPaid bool `json:"is_paid,omitempty"` Reason string `json:"reason,omitempty"` ApproverID string `json:"approver_id,omitempty"` Approver string `json:"approver,omitempty"` ApprovalRespAt time.Time `json:"approval_resp_at,omitempty"` CancelledAt time.Time `json:"cancelled_at,omitempty"` UpdatedAt time.Time `json:"updated_at,omitempty"` Comments []struct { CommentID string `json:"comment_id,omitempty"` Comment string `json:"comment,omitempty"` CommenterID string `json:"commenter_id,omitempty"` Commenter string `json:"commenter,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` } `json:"comments,omitempty"` }
type GetTimeoffsResponse ¶
type GetTimeoffsResponse struct { TimeOffRequests []struct { ID string `json:"id,omitempty"` StartDate time.Time `json:"start_date,omitempty"` EndDate time.Time `json:"end_date,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Employee string `json:"employee,omitempty"` RequestedByID string `json:"requested_by_id,omitempty"` RequestedBy string `json:"requested_by,omitempty"` TypeID string `json:"type_id,omitempty"` Type string `json:"type,omitempty"` DayType string `json:"day_type,omitempty"` Duration float64 `json:"duration,omitempty"` Status string `json:"status,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` } `json:"time_off_requests,omitempty"` Meta struct { Count int `json:"count,omitempty"` Limit int `json:"limit,omitempty"` Page int `json:"page,omitempty"` } `json:"meta,omitempty"` }
type GetTimesheetResponse ¶
type GetTimesheetResponse struct { ID string `json:"id,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Employee string `json:"employee,omitempty"` ScheduleID string `json:"schedule_id,omitempty"` Schedule string `json:"schedule,omitempty"` PositionID string `json:"position_id,omitempty"` Position string `json:"position,omitempty"` JobSiteID string `json:"job_site_id,omitempty"` JobSite string `json:"job_site,omitempty"` Type string `json:"type,omitempty"` Duration float64 `json:"duration,omitempty"` BreakDuration float64 `json:"break_duration,omitempty"` Notes string `json:"notes,omitempty"` Status string `json:"status,omitempty"` TimeoffRequestID string `json:"timeoff_request_id,omitempty"` TimeoffTypeID string `json:"timeoff_type_id,omitempty"` TimeoffType string `json:"timeoff_type,omitempty"` InLat float64 `json:"in_lat,omitempty"` InLng float64 `json:"in_lng,omitempty"` OutLat float64 `json:"out_lat,omitempty"` OutLng float64 `json:"out_lng,omitempty"` Latitude float64 `json:"latitude,omitempty"` Longitude float64 `json:"longitude,omitempty"` ShiftID string `json:"shift_id,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` BreakName string `json:"break_name,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` IsPaid bool `json:"is_paid,omitempty"` } `json:"breaks,omitempty"` }
type GetTimesheetsResponse ¶
type GetTimesheetsResponse struct { TimeEntries []struct { ID string `json:"id,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Employee string `json:"employee,omitempty"` ScheduleID string `json:"schedule_id,omitempty"` Schedule string `json:"schedule,omitempty"` PositionID string `json:"position_id,omitempty"` Position string `json:"position,omitempty"` JobSiteID string `json:"job_site_id,omitempty"` JobSite string `json:"job_site,omitempty"` Type string `json:"type,omitempty"` Duration float64 `json:"duration,omitempty"` BreakDuration float64 `json:"break_duration,omitempty"` Notes string `json:"notes,omitempty"` Status string `json:"status,omitempty"` TimeoffRequestID string `json:"timeoff_request_id,omitempty"` TimeoffTypeID string `json:"timeoff_type_id,omitempty"` TimeoffType string `json:"timeoff_type,omitempty"` InLat float64 `json:"in_lat,omitempty"` InLng float64 `json:"in_lng,omitempty"` OutLat float64 `json:"out_lat,omitempty"` OutLng float64 `json:"out_lng,omitempty"` Latitude float64 `json:"latitude,omitempty"` Longitude float64 `json:"longitude,omitempty"` ShiftID string `json:"shift_id,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` BreakName string `json:"break_name,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` IsPaid bool `json:"is_paid,omitempty"` } `json:"breaks,omitempty"` } `json:"time_entries,omitempty"` Meta struct { Count int `json:"count,omitempty"` Limit int `json:"limit,omitempty"` Page int `json:"page,omitempty"` } `json:"meta,omitempty"` }
type InviteEmployeeRequest ¶
type InviteEmployeeResponse ¶
type InviteEmployeeResponse struct {
Message string `json:"message,omitempty"`
}
type Module ¶
type Module = string
const ( EmployeesModule Module = "employees" // CRUD AvailabilityModule Module = "schedules" // CRUD - Shifts, Availability TimesheetsModule Module = "timesheets" // CRUD SettingsModule Module = "settings" // CRUD - Settings (Schedules, Positions, Job Sites) TimeoffModule Module = "timeoff" // CRUD )
type UpdateAvailabilityRequest ¶
type UpdateAvailabilityRequest struct { ID string `json:"id,omitempty"` EmployeeID string `json:"employee_id,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` Preference string `json:"preference,omitempty"` // preferred, unavailable Notes string `json:"notes,omitempty"` }
type UpdateEmployeeRequest ¶
type UpdateEmployeeRequest struct { FirstName string `json:"first_name,omitempty"` LastName string `json:"last_name,omitempty"` WorkEmail string `json:"work_email,omitempty"` Mobile string `json:"mobile,omitempty"` MobileCountryCode string `json:"mobile_country_code,omitempty"` Schedules []struct { ID string `json:"id,omitempty"` } `json:"schedules,omitempty"` Positions []struct { ID string `json:"id,omitempty"` } `json:"positions,omitempty"` Timezone string `json:"timezone,omitempty"` AccessLevelID string `json:"access_level_id,omitempty"` HourlyRate int `json:"hourly_rate,omitempty"` HireDate string `json:"hire_date,omitempty"` ExternalEmployeeID string `json:"external_employee_id,omitempty"` HideFromSchedule bool `json:"hide_from_schedule,omitempty"` OvertimeRuleID string `json:"overtime_rule_id,omitempty"` EmploymentType string `json:"employment_type,omitempty"` MaxHrsWeek int `json:"max_hrs_week,omitempty"` MinHrsWeek int `json:"min_hrs_week,omitempty"` MaxHrsDay int `json:"max_hrs_day,omitempty"` MaxDaysWeek int `json:"max_days_week,omitempty"` MaxShiftsDay int `json:"max_shifts_day,omitempty"` }
type UpdateEmployeeResponse ¶
type UpdateEmployeeResponse struct { ID string `json:"id,omitempty"` FirstName string `json:"first_name,omitempty"` LastName string `json:"last_name,omitempty"` WorkEmail string `json:"work_email,omitempty"` Mobile string `json:"mobile,omitempty"` MobileCountryCode string `json:"mobile_country_code,omitempty"` AccessLevelID string `json:"access_level_id,omitempty"` Status string `json:"status,omitempty"` InviteStatus string `json:"invite_status,omitempty"` Schedules []struct { ID string `json:"id,omitempty"` } `json:"schedules,omitempty"` Positions []struct { ID string `json:"id,omitempty"` } `json:"positions,omitempty"` Timezone string `json:"timezone,omitempty"` HireDate string `json:"hire_date,omitempty"` ExternalEmployeeID string `json:"external_employee_id,omitempty"` HideFromSchedule bool `json:"hide_from_schedule,omitempty"` OvertimeRuleID string `json:"overtime_rule_id,omitempty"` EmploymentType string `json:"employment_type,omitempty"` MaxHrsWeek int `json:"max_hrs_week,omitempty"` MinHrsWeek int `json:"min_hrs_week,omitempty"` MaxHrsDay int `json:"max_hrs_day,omitempty"` MaxDaysWeek int `json:"max_days_week,omitempty"` MaxShiftsDay int `json:"max_shifts_day,omitempty"` }
type UpdateJobsiteRequest ¶
type UpdateJobsiteRequest struct { Name string `json:"name,omitempty"` Schedules []struct { ID string `json:"id,omitempty"` } `json:"schedules,omitempty"` Address string `json:"address,omitempty"` Latitude string `json:"latitude,omitempty"` Longitude string `json:"longitude,omitempty"` Notes string `json:"notes,omitempty"` }
type UpdateJobsiteResponse ¶
type UpdateJobsiteResponse struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` Schedules []struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` } `json:"schedules,omitempty"` Address string `json:"address,omitempty"` Latitude string `json:"latitude,omitempty"` Longitude string `json:"longitude,omitempty"` Notes string `json:"notes,omitempty"` }
type UpdatePositionRequest ¶
type UpdatePositionRequest struct { Name string `json:"name,omitempty"` Color string `json:"color,omitempty"` // red, pink, magenta, purple, deep-purple, indigo, light-violet, blue, light-blue, cyan, muted-green, teal, green, light-green, lime, yellow, amber, orange, deep-orange, brown, grey, blue-grey Schedules []struct { ID string `json:"id,omitempty"` } `json:"schedules,omitempty"` }
type UpdatePositionResponse ¶
type UpdateScheduleRequest ¶
type UpdateScheduleResponse ¶
type UpdateShiftRequest ¶
type UpdateShiftRequest struct { StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` EmployeeID string `json:"employee_id,omitempty"` // empty creates an open shift Count int `json:"count,omitempty"` ScheduleID string `json:"schedule_id,omitempty"` PositionID string `json:"position_id,omitempty"` JobSiteID string `json:"job_site_id,omitempty"` Notes string `json:"notes,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` } `json:"breaks,omitempty"` }
type UpdateShiftResponse ¶
type UpdateShiftResponse struct { ID string `json:"id,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Count int `json:"count,omitempty"` ScheduleID string `json:"schedule_id,omitempty"` PositionID string `json:"position_id,omitempty"` JobSiteID string `json:"job_site_id,omitempty"` Duration float64 `json:"duration,omitempty"` BreakDuration float64 `json:"break_duration,omitempty"` Notes string `json:"notes,omitempty"` IsPublished bool `json:"is_published,omitempty"` IsConfirmed bool `json:"is_confirmed,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` IsPaid bool `json:"is_paid,omitempty"` } `json:"breaks,omitempty"` }
type UpdateTimeoffRequest ¶
type UpdateTimeoffResponse ¶
type UpdateTimeoffResponse struct { ID string `json:"id,omitempty"` StartDate time.Time `json:"start_date,omitempty"` EndDate time.Time `json:"end_date,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Employee string `json:"employee,omitempty"` RequestedByID string `json:"requested_by_id,omitempty"` RequestedBy string `json:"requested_by,omitempty"` TypeID string `json:"type_id,omitempty"` Type string `json:"type,omitempty"` DayType string `json:"day_type,omitempty"` Duration float64 `json:"duration,omitempty"` Status string `json:"status,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` IsPaid bool `json:"is_paid,omitempty"` Reason string `json:"reason,omitempty"` ApproverID string `json:"approver_id,omitempty"` Approver string `json:"approver,omitempty"` ApprovalRespAt time.Time `json:"approval_resp_at,omitempty"` CancelledAt time.Time `json:"cancelled_at,omitempty"` UpdatedAt time.Time `json:"updated_at,omitempty"` Comments []struct { CommentID string `json:"comment_id,omitempty"` Comment string `json:"comment,omitempty"` CommenterID string `json:"commenter_id,omitempty"` Commenter string `json:"commenter,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` } `json:"comments,omitempty"` }
type UpdateTimesheetRequest ¶
type UpdateTimesheetRequest struct { StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` EmployeeID string `json:"employee_id,omitempty"` ScheduleID string `json:"schedule_id,omitempty"` PositionID string `json:"position_id,omitempty"` JobSiteID string `json:"job_site_id,omitempty"` Notes string `json:"notes,omitempty"` ShiftID string `json:"shift_id,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` } `json:"breaks,omitempty"` }
type UpdateTimesheetResponse ¶
type UpdateTimesheetResponse struct { ID string `json:"id,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` EmployeeID string `json:"employee_id,omitempty"` Employee string `json:"employee,omitempty"` ScheduleID string `json:"schedule_id,omitempty"` Schedule string `json:"schedule,omitempty"` PositionID string `json:"position_id,omitempty"` Position string `json:"position,omitempty"` JobSiteID string `json:"job_site_id,omitempty"` JobSite string `json:"job_site,omitempty"` Type string `json:"type,omitempty"` Duration float64 `json:"duration,omitempty"` BreakDuration float64 `json:"break_duration,omitempty"` Notes string `json:"notes,omitempty"` Status string `json:"status,omitempty"` TimeoffRequestID string `json:"timeoff_request_id,omitempty"` TimeoffTypeID string `json:"timeoff_type_id,omitempty"` TimeoffType string `json:"timeoff_type,omitempty"` InLat float64 `json:"in_lat,omitempty"` InLng float64 `json:"in_lng,omitempty"` OutLat float64 `json:"out_lat,omitempty"` OutLng float64 `json:"out_lng,omitempty"` Latitude float64 `json:"latitude,omitempty"` Longitude float64 `json:"longitude,omitempty"` ShiftID string `json:"shift_id,omitempty"` Breaks []struct { BreakID string `json:"break_id,omitempty"` BreakName string `json:"break_name,omitempty"` DurationMins int `json:"duration_mins,omitempty"` StartTime time.Time `json:"start_time,omitempty"` EndTime time.Time `json:"end_time,omitempty"` IsPaid bool `json:"is_paid,omitempty"` } `json:"breaks,omitempty"` }