{"openapi":"3.0.1","info":{"title":"foundU API","description":"","termsOfService":"https:\/\/foundu.com.au\/api-terms","contact":{"email":"api@foundu.com.au"},"x-hideTryItPanel":true,"x-logo":{"url":"\/secure\/documents\/secure_logo.png","href":"https:\/\/api.foundu.com.au"}},"externalDocs":{"description":"Find out more about foundU","url":"https:\/\/foundu.com.au"},"servers":[{"url":"https:\/\/api.foundu.com.au"}],"tags":[{"name":"Employees","description":"Search, create and manage employees."}],"paths":{"\/api\/v1\/accounting\/payroll-ledger-map\/report":{"post":{"tags":["Payroll Ledger Map"],"summary":"Return payroll ledger map data by paying entity","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"from_date":{"type":"string","description":"The start date of the report","example":"2026-06-01"},"to_date":{"type":"string","description":"The end date of the report","example":"2026-06-01"},"cash_basis":{"type":"boolean","description":"Whether to use cash basis accounting or not","example":false},"employee_ids":{"type":"array","description":"Employee IDs that this report will filter to","items":{"type":"int","example":[1,2,3]}},"paying_entity_id":{"type":"int","description":"The ID of the paying entity you want to get the report for","example":1}}}}},"required":true},"operationId":"api_v1_accounting_payroll-ledger-map_report_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"string","description":"Status of the request, mixed types","enum":[true,"Error"]},"data":{"type":"object","properties":{"headers":{"type":"array","description":"An array of headers for the report","example":["Narration","Date","Description","Code","Tax Rate","Debit","Credit","Tracking Name 1","Tracking Option 1","Tracking Name 2","Tracking Option 2"]},"data":{"type":"array","description":"An array of data for the report, each row is an array of values keyed to the headers in order","example":[["foundU Holdings","2024-01-02","Wages and Salaries","123","BAS Excluded",123.45,0,null,null,null,null],["foundU Holdings","2024-01-01","Wages Payable - Payroll","124","BAS Excluded",0,123.45,null,null,null,null],[null,null,null,null,null,123.45,123.45,null,null,null,null]]}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/cost-codes":{"post":{"tags":["Cost Code"],"summary":"Adds a Cost Code. JSON is preferred for payload","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"cost_code":{"type":"string","description":"New cost code name. This must be unique in the system.","example":"Holiday bonus code"},"operation_ids":{"type":"array","items":{"type":"int","description":"Operation IDs that this code code will apply to","example":86}},"applies_to_all":{"type":"boolean","description":"Does this cost code apply to every operations?","enum":[true,false]}}}}},"required":true},"operationId":"api_v1_cost-codes_POST","responses":{"403":{"description":"Not authorised"},"201":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":[]}}}}},"x-hideTryItPanel":true},"get":{"tags":["Cost Code"],"summary":"List Cost Codes","operationId":"api_v1_cost-codes_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"total":{"type":"int","description":"Total number of items in results","example":5},"per_page":{"type":"int","description":"Number of results returned per page","example":100},"current_page":{"type":"int","description":"Current page number of results","example":1},"last_page":{"type":"int","description":"Last page number for results","example":2},"next_page_url":{"type":"string","description":"URL for next page request","example":"https:\/\/test.foundu.com.au\/api\/v1\/cost-codes?page=99"},"prev_page_url":{"type":"string","description":"URL for previous page request","example":"https:\/\/test.foundu.com.au\/api\/v1\/cost-codes?page=4"},"from":{"type":"int","description":"Item order on this page starts from this (based on current page and per page item)","example":1},"to":{"type":"int","description":"Item order on this page ends at this (based on current page and per page item)","example":10},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"int","description":"Cost code id","example":72},"cost_code":{"type":"string","description":"Cost code name","example":"Holiday bonus code"},"operations":{"type":"string","description":"Comma-separated operation IDs that this cost code applies to","example":"4,5"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/cost-codes\/{costCode}":{"put":{"tags":["Cost Code"],"summary":"Updates an Existing Cost Code. JSON is preferred for payload","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"operation_ids":{"type":"array","items":{"type":"int","description":"Operation IDs that this code will apply to (only if applies_to_all set to false)","example":36}},"applies_to_all":{"type":"boolean","description":"Does this cost code apply to all operations?","enum":[true,false]},"cost_code":{"type":"string","description":"Cost code name. This must match exactly to an existing cost code \/ purchase order in the system","example":"Holiday bonus code"}}}}},"required":true},"operationId":"api_v1_cost-codes_{costCode}_PUT","parameters":[{"name":"costCode","in":"path","description":"Cost Code Id","required":true,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":[]}}}}},"x-hideTryItPanel":true},"delete":{"tags":["Cost Code"],"summary":"Deletes a Cost Code","operationId":"api_v1_cost-codes_{costCode}_DELETE","parameters":[{"name":"costCode","in":"path","description":"Cost code Id","required":true,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"}},"x-hideTryItPanel":true}},"\/api\/v1\/shift-history":{"get":{"tags":["Shift History"],"summary":"Return Shift History data","operationId":"api_v1_shift-history_GET","parameters":[{"name":"filter_roster_shift_candidate_ids","in":"query","description":"Filter by Roster Shift Candidate Ids. Example 1,2,3,10\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/ShiftHistoryTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/tag-groups":{"get":{"tags":["Tag Groups"],"summary":"List all the tag groups","operationId":"api_v1_tag-groups_GET","parameters":[{"name":"filter","in":"query","description":"Filter results based on id or label\n","required":false,"schema":{"type":"string"}},{"name":"filter_ids","in":"query","description":"Filtering based on Tag group Ids","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 3000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/TagGroupTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/tag-groups\/{id}":{"get":{"tags":["Tag Groups"],"summary":"Retrieve the details of a specific tag group with an Id","operationId":"api_v1_tag-groups_{id}_GET","parameters":[{"name":"id","in":"path","description":"Tag group Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/TagGroupTransformer"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/employee-shifts":{"get":{"tags":["Rosters"],"summary":"Returns employee shift data","operationId":"api_v1_employee-shifts_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"branch,employee,position,position_group,errors,rosterShiftComment,attendance,rosterShift,shiftDocument,costing,clockLog,tags,qualifications,shiftLeave"}},{"name":"filter_include_deleted","in":"query","description":"Include deleted shift records. Accept boolean value (1,0,true,false)\n","required":false,"schema":{"type":"string"}},{"name":"filter_employee_shift_ids","in":"query","description":"Comma separated integers. Example 1,2,3,10\n","required":false,"schema":{"type":"string"}},{"name":"filter_shifts_between","in":"query","description":"Comma separated start,end. Example `2024-01-01,2024-01-14`\n","required":false,"schema":{"type":"string"}},{"name":"filter_previous_shifts","in":"query","description":"","required":false,"schema":{"type":"string"}},{"name":"filter_upcoming_shifts","in":"query","description":"","required":false,"schema":{"type":"string"}},{"name":"filter_shifts_start_or_end_between","in":"query","description":"Comma separated start,end. Example `2024-01-01,2024-01-14`\n","required":false,"schema":{"type":"string"}},{"name":"filter_branches","in":"query","description":"Comma separated integers. Example 1,2,3,10\n","required":false,"schema":{"type":"string"}},{"name":"filter_positions_and_groups","in":"query","description":"","required":false,"schema":{"type":"string"}},{"name":"filter_shift_status","in":"query","description":"Comma separated integers. Example 1,2,3\n","required":false,"schema":{"type":"string"}},{"name":"filter_shift_badge_status","in":"query","description":"Comma separated string. Example draft,offered,accepted,worked,actioned\n","required":false,"schema":{"type":"string"}},{"name":"filter_verification","in":"query","description":"Comma separated integers. Example 1,2,3\n","required":false,"schema":{"type":"string"}},{"name":"filter_only_with_errors","in":"query","description":"Filter query to only contain errors of:\n$filter = 0\n=>   Warnings OR Errors\n\n$filter = 1\n=>  Warning only\n\n$filter = 2\n=> Errors only\n","required":false,"schema":{"type":"string"}},{"name":"filter_employees","in":"query","description":"Array of integers\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. ","required":false,"schema":{"type":"string"}},{"name":"filter_updated_since","in":"query","description":"Returns records updated since the specified parameter applied. Example: 2024-01-01 15:15:30\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/EmployeeShiftTransformer"}},"included":{"type":"object","properties":{"roster-shift-{id}":{"type":"object","$ref":"#\/components\/schemas\/ShiftTransformer"},"clock_log-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClockLogTransformer"},"branch-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterBranchTransformer"},"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientTransformer"},"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"},"location-{id}":{"type":"object","$ref":"#\/components\/schemas\/LocationTransformer"},"employee-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeTransformer"},"roster_shift_breaks-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterShiftBreakTransformer"},"employee-attendance-{id}":{"type":"object","$ref":"#\/components\/schemas\/ShiftAttendanceTransformer"},"position-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterPositionTransformer"},"position-group-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterPositionGroupTransformer"},"employee-shift-error-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeShiftErrorTransformer"},"roster-shift-comment-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterShiftCommentTransformer"},"employee-shift-document-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeShiftDocumentTransformer"},"employee-shift-costing-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeShiftCostingTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/employee-shifts\/find-employees":{"get":{"tags":["Rosters"],"summary":"Search for employees to place on shifts","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"branch_id":{"type":"integer","description":"Roster branch id to be queried","example":119},"shift_start":{"type":"string","description":"Shift start time to be queried","example":"2026-06-01 03:32:50"},"shift_end":{"type":"string","description":"Shift end time to be queried","example":"2026-06-01 03:32:50"},"position_id":{"type":"integer","description":"Position id to be searched within the shifts","example":61},"position_group_id":{"type":"integer","description":"Position group id to be searched within the shifts","example":100},"can_id":{"type":"integer","description":"Candidate id to limit results to a single employee","example":691},"date_start":{"type":"string","description":"Date of start of shift to be searched","example":"2026-06-01"},"date_end":{"type":"string","description":"Date of end of shift to be searched","example":"2026-06-01"},"tags":{"type":"string","description":"Comma-separated list of tag IDs to filter employees by shift requirements","example":"1,2,3"},"qualifications":{"type":"string","description":"Comma-separated list of qualification IDs to filter employees by shift requirements","example":"4,5,6"},"available_for_shift":{"type":"boolean","description":"Filter to only show employees available for the shift (no errors or warnings)","example":true},"order":{"type":"string","description":"Field to sort employees by","enum":["name","hours_worked","age"],"example":"name"},"order_direction":{"type":"string","description":"Sort direction (required if order is specified)","enum":["asc","desc"],"example":"asc"},"include_blocked":{"type":"boolean","description":"Flag to indicate if employees with blocking errors should be included in the results. When false (default), employees with errors will be filtered out.","example":false},"preselected_employee_ids":{"type":"array","description":"Array of employee IDs that should always be included in results regardless of blocking status. Useful when editing shifts to ensure the currently assigned employee remains visible.","items":{"type":"integer","example":123}},"apply_position_exclusions":{"type":"boolean","description":"Whether to apply client position exclusion filtering. When false (default for roster operations), employees excluded from positions will still be returned. When true, excluded employees will be filtered out.","example":false},"hours_worked_mode":{"type":"string","description":"Controls which value is returned in hours_worked. `current` returns existing rostered hours. `projected_create` returns existing + requested shift duration. `projected_edit` returns existing excluding ignore_shift_id + requested shift duration.","enum":["current","projected_create","projected_edit"],"example":"current"}}}}},"required":true},"operationId":"api_v1_employee-shifts_find-employees_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"*":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Employee id","example":48},"name":{"type":"string","description":"Employee first name and surname","example":"John Tester"},"surname":{"type":"string","description":"Employee surname","example":"Smith"},"first_name":{"type":"string","description":"Employee first name","example":"Adam"},"preferred_name":{"type":"string","description":"Employee's preferred name","example":"John T."},"first_preferred_name_with_surname":{"type":"string","description":"Employee's preferred name with surname; if no preferred name, it returns first and last name","example":"John Smith"},"email":{"type":"string","description":"Employee email address","example":"john.tester@test.com.au"},"mobile":{"type":"string","description":"Employee mobile number","example":"0412345678"},"errors":{"type":"array","items":{"type":"object","properties":{"shift-conflict":{"type":"object","properties":{"priority":{"type":"integer","description":"This is used for foundU's internal sorting purposes","example":5},"message":{"type":"string","description":"Error message for conflicting shifts","example":"Employee has conflicting shift"},"short":{"type":"string","description":"Short error message for conflicting shifts","example":"Conflicting shift"}}}}}},"warnings":{"type":"array","items":{"job-conflict":{"type":"object","properties":{"priority":{"type":"integer","description":"This is used for foundU's internal sorting purposes","example":5},"message":{"type":"string","description":"Warning message for conflicting jobs","example":"Employee has conflicting job"},"short":{"type":"string","description":"Short warning message for conflicting jobs","example":"Conflicting job"}}},"candidate-archived":{"type":"string","description":"Warning message for situations where employee has been archived","example":"Employee archived"},"employee-not-available-time-based":{"type":"object","properties":{"priority":{"type":"integer","description":"This is used for foundu's internal sorting purposes","example":3},"label":{"type":"string","description":"Warning label for time-based availability","example":"Employee is unavailable."},"message":{"type":"string","description":"Warning message for time-based availability","example":"Employee is unavailable."},"available_time":{"type":"array","items":{"*":{"type":"object","properties":{"date":{"type":"string","description":"Date of available times (in Y-m-d format)","example":"2026-06-01"},"start":{"type":"string","description":"Date and time of availability start","example":"2026-06-01 03:32:50"},"end":{"type":"string","description":"Date and time of availability end","example":"2026-06-01 03:32:50"}}}}},"unavailable_time":{"type":"array","description":"Array of time ranges when employee is unavailable within the requested shift time","items":{"*":{"type":"object","properties":{"start":{"type":"string","description":"Date and time when unavailability starts","example":"2026-06-01 14:00:00"},"end":{"type":"string","description":"Date and time when unavailability ends","example":"2026-06-01 18:30:00"}}}}},"short":{"type":"string","description":"Short warning message for time-based availability","example":"Unavailable"}}},"employee-not-available":{"type":"object","properties":{"priority":{"type":"integer","description":"This is used for foundU's internal sorting purposes","example":3},"message":{"type":"string","description":"Warning message for employee not available situation","example":"Employee is unavailable."},"short":{"type":"string","description":"Warning short message for employee not available situation","example":"Unavailable"}}},"fatigue":{"type":"object","properties":{"priority":{"type":"integer","description":"This is used for foundU's internal sorting purposes","example":2},"message":{"type":"string","description":"Warning message for fatigue warning","example":"2 hours or less since last shift"},"short":{"type":"string","description":"Warning short message for fatigue warning","example":"Fatigue warning"}}},"upcoming-fatigue":{"type":"object","properties":{"priority":{"type":"integer","description":"This is used for foundU's internal sorting purposes","example":2},"message":{"type":"string","description":"Warning message for upcoming fatigue warning","example":"2 hours or less until next shift"},"short":{"type":"string","description":"Warning short message for upcoming fatigue warning","example":"Fatigue warning"}}},"leave-conflict":{"type":"object","properties":{"priority":{"type":"integer","description":"This is used for foundU's internal sorting purposes","example":7},"message":{"type":"string","description":"Warning message for leave conflict situation","example":"Employee has approval leave on this day"},"short":{"type":"string","description":"Warning short message for leave conflict situation","example":"On leave"},"leave_start":{"type":"string","description":"Start date of leave (in Y-m-d format)","example":"2025-10-30"},"leave_end":{"type":"string","description":"End date of leave (in Y-m-d format)","example":"2025-11-10"}}},"maximum-weekly-hours-exceeded":{"type":"object","properties":{"priority":{"type":"integer","description":"This is used for foundU's internal sorting purposes","example":4},"hours":{"type":"number","description":"Number of weekly maximum hours","example":48},"message":{"type":"string","description":"Warning message for weekly maximum hours exceeded","example":"Employee has exceeded maximum hour (48 hrs) for this week"},"short":{"type":"string","description":"Warning short message for weekly maximum hours exceeded","example":"Max weekly hours exceeded"}}},"maximum-weekly-ordinary-hours-exceeded":{"type":"object","properties":{"priority":{"type":"integer","description":"This is uses for foundU's internal sorting purposes","example":4},"hours":{"type":"number","description":"Number of weekly maximum ordinary hours","example":40},"message":{"type":"string","description":"Warning message for weekly maximum ordinary hours exceeded","example":"Employee has exceeded maximum Weekly Ordinary Hours (40 hrs)."},"short":{"type":"string","description":"Warning short message for weekly ordinary maximum hours exceeded","example":"Max weekly ordinary hours exceeded"}}}}},"hours_worked":{"type":"number","description":"Selected hours worked value based on hours_worked_mode","example":8.5},"hours_worked_current":{"type":"number","description":"Current rostered hours from valid shifts only","example":16},"hours_worked_projected":{"type":"number","description":"Projected rostered hours including requested shift duration (and excluding ignore_shift_id when provided)","example":24},"position_group_rates":{"type":"object","properties":{"*":{"type":"number","description":"Hourly rate for position group id","example":40.5}}},"position_rates":{"type":"object","properties":{"*":{"type":"number","description":"Hourly rate for position id","example":40.5}}},"age":{"type":"integer","description":"Displays the employees age; if age is > 21, we will only display 21 to prevent age discrimination","example":21},"employee_type":{"type":"string","description":"Employment type\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>full<\/td><td>full time<\/td><\/tr><tr><td>part<\/td><td>part-time<\/td><\/tr><tr><td>casual<\/td><td>casual<\/td><\/tr><\/table>","enum":["full","casual","part"]},"employment_restriction":{"type":"integer","description":"Flag to indicate if this employee has restrictions\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"has_workcover":{"type":"integer","description":"Flag to indicate if employee has workcover\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"has_special_condition":{"type":"integer","description":"Flag to indicate if employee has special conditions\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/office-codes":{"get":{"tags":["Office Code"],"summary":"Returns the list of office code","operationId":"api_v1_office-codes_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Request status","enum":[true,false]},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Office code id","example":"2"},"label":{"type":"string","description":"Office code label","example":"Brisbane Office"},"address_state_territory":{"type":"string","description":"Office code address state","example":"QLD"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/location":{"get":{"tags":["Work Location"],"summary":"Returns locations","operationId":"api_v1_location_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"*":{"type":"array","items":{"type":"object","properties":{"location":{"type":"string","description":"Location label","example":"Brisbane North"},"loc_id":{"type":"integer","description":"Location id","example":5}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/employee-leave-ledger\/{employeeId}":{"get":{"tags":["Employees"],"summary":"Returns employee leave balances","operationId":"api_v1_employee-leave-ledger_{employeeId}_GET","parameters":[{"name":"employeeId","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}},{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"position-entitlement-settings,positionEntitlementSetting"}},{"name":"filter_entitlement","in":"query","description":"Filters by entitlement id\n","required":false,"schema":{"type":"string"}},{"name":"filter_by_employable_operation","in":"query","description":"Filters by employable operation\n","required":false,"schema":{"type":"string"}},{"name":"filter_by_shifts_employee","in":"query","description":"Filter by employee shifts (start and end dates)\n","required":false,"schema":{"type":"string"}},{"name":"filter_no_auto_pay","in":"query","description":"Filters results to exclude employees with autopay enabled\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/EmployeeLeaveLedgerTransformer"}},"included":{"type":"object","properties":{"position-entitlement-settings-{id}":{"type":"object","$ref":"#\/components\/schemas\/PositionEntitlementSettingsTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/holidays":{"get":{"tags":["Leave and Time-off"],"summary":"List all public holidays","operationId":"api_v1_holidays_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"holiday-additional-details,additionalDetails"}},{"name":"filter_between_date","in":"query","description":"Filters results to return only dates between start and end dates. Use comma to separate start and end dates.\ne.g.: filter_between_date=2023-01-01,2023-12-31","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/HolidayTransformer"}},"included":{"type":"object","properties":{"holiday-additional-details-{id}":{"type":"object","$ref":"#\/components\/schemas\/HolidayAdditionalDetailsTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/managers":{"get":{"tags":["Managers"],"summary":"Returns the list of managers","operationId":"api_v1_managers_GET","parameters":[{"name":"filter_updated_since","in":"query","description":"Filters the results to records updated since timestamp\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/ManagerTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/uploaded-attachments":{"get":{"tags":["Custom Communication Templates"],"summary":"Returns the details of a specific custom template","operationId":"api_v1_uploaded-attachments_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/CustomTemplateAdminTransformer"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/custom-templates":{"get":{"tags":["Custom Communication Templates"],"summary":"Returns the list of custom templates","operationId":"api_v1_custom-templates_GET","parameters":[{"name":"filter","in":"query","description":"Filter by custom templates id\n","required":false,"schema":{"type":"string"}},{"name":"filter_name","in":"query","description":"Filter by custom templates name\n","required":false,"schema":{"type":"string"}},{"name":"filter_type","in":"query","description":"Filter by custom template type\n","required":false,"schema":{"type":"string"}},{"name":"filter_admin_id","in":"query","description":"Filter by custom template type\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order results by 'Id', 'name'\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/CustomTemplateTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/custom-templates\/{id}":{"get":{"tags":["Custom Communication Templates"],"summary":"Returns the details of a specific custom template","operationId":"api_v1_custom-templates_{id}_GET","parameters":[{"name":"id","in":"path","description":"Custom template Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/CustomTemplateAdminTransformer"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/custom-templates-admins":{"get":{"tags":["Custom Communication Templates"],"summary":"Returns the details of a specific Admin that registered custom template","operationId":"api_v1_custom-templates-admins_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/CustomTemplateAdminTransformer"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/custom-templates-upload-attachment":{"post":{"tags":["Custom Communication Templates"],"summary":"Upload attachments belonged to custom template","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"custom_templates_attachments":{"type":"file"}}}}},"required":true},"operationId":"api_v1_custom-templates-upload-attachment_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"file"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/custom-templates-delete-attachment":{"post":{"tags":["Custom Communication Templates"],"summary":"Delete attachments belonged to custom template","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"custom_templates_attachments":{"type":"file"}}}}},"required":true},"operationId":"api_v1_custom-templates-delete-attachment_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"file"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/custom-templates\/add":{"post":{"tags":["Custom Communication Templates"],"summary":"Add new custom template","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"custom_template":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of custom template","example":"Bachelor of Arts"},"type":{"type":"string","description":"Type of custom template, 1: email, 2: sms","example":"1"},"admin_id":{"type":"string","description":"Id of admin that registered custom template","example":"1"},"attachment":{"type":"string","description":"Files attached with email template existed or not","example":"1"},"template":{"type":"string","description":"Custom template content","example":"This is confirmation message that you will show up on Monday."}}}}}}}},"required":true},"operationId":"api_v1_custom-templates_add_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Custom Template Id","example":"123"},"name":{"type":"string","description":"Name of custom template","example":"Bachelor of Arts"},"type":{"type":"string","description":"Type of custom template, 1: email, 2: sms","example":"1"},"admin_id":{"type":"string","description":"Id of admin that registered custom template","example":"1"},"attachment":{"type":"string","description":"Files attached with email template existed or not","example":"1"},"template":{"type":"string","description":"Custom template content","example":"This is confirmation message that you will show up on Monday."}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/custom-templates\/update":{"post":{"tags":["Custom Communication Templates"],"summary":"Update multiple custom template","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"custom_template":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of custom template","example":"Bachelor of Arts"},"type":{"type":"string","description":"Type of custom template, 1: email, 2: sms","example":"1"},"admin_id":{"type":"string","description":"Id of admin that registered custom template","example":"1"},"attachment":{"type":"string","description":"Files attached with email template existed or not","example":"1"},"template":{"type":"string","description":"Custom template content","example":"This is confirmation message that you will show up on Monday."},"id":{"type":"number","description":"Id of Custom template (required if updating)","example":17}}}}}}}},"required":true},"operationId":"api_v1_custom-templates_update_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/custom-templates\/delete\/{id}\/{storageAdminId}":{"delete":{"tags":["Custom Communication Templates"],"summary":"Delete custom template by ID","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"custom_templates_attachments":{"type":"file"}}}}},"required":true},"operationId":"api_v1_custom-templates_delete_{id}_{storageAdminId}_DELETE","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":"boolean","example":true}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/employee-shift-log":{"post":{"tags":["Rosters"],"summary":"Save employee shift","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"params":{"type":"object","properties":{"type":{"type":"string","description":"Type of request","enum":["create","update","delete","create_bulk_shift"]},"action_type":{"type":"string","description":"Type of shift","enum":["assign","offer","open"]},"is_shortlist":{"type":"boolean","description":"Flag to indicate that whether shift offers should be shortlisted","enum":[true,false]},"until_end_time_required":{"type":"boolean","description":"Flag to indicate that employee is required until end of shift","enum":[true,false]},"branch_id":{"type":"string","description":"Roster branch id","example":"29"},"shift_end":{"type":"string","description":"Date and time of shift end time","example":"2026-06-01 03:32:50"},"employee_id":{"type":"string","description":"Employee id","example":"32"},"employee_shift_id":{"type":"string","description":"Roster shift employee id, needed when updating a shift","example":"11585"},"shift_start":{"type":"string","description":"Date and time of shift start time","example":"2026-06-01 03:32:50"},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance id","example":"118"},"allowance_rate_id":{"type":"string","description":"Allowance rate id","example":"173"},"allowance_qty":{"type":"integer","description":"Number of unit of allowance requested for this shift (e.g.: X km of travel allowance)","example":5}}}},"shift_comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment to be added","example":"Employee should arrive 10 minutes early"},"visible_to_employee":{"type":"string","description":"Flag to make this comment visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>visible<\/td><\/tr><tr><td>0<\/td><td>hidden<\/td><\/tr><\/table>","enum":["1","0"]},"comment_id":{"type":"string","description":"If set, will update an existing comment with specified Id; use in conjunction with 'edited'","example":"100"},"edited":{"type":"boolean","description":"This property is required. If set to true, will update an existing comment; use in conjunction with 'comment_id'","enum":[true,false]},"to_delete":{"type":"boolean","description":"This property is required. To delete an existing comment, set this to true (in conjunction with 'comment_id'), otherwise, set to false","enum":[true,false]},"saved":{"type":"boolean","description":"This property is required. To create a new comment or update existing comment, set this to false","enum":[true,false]}}}},"tags":{"type":"array","items":{"type":"string","description":"Tag id","example":"31"}},"qualifications":{"type":"array","items":{"type":"string","description":"Qualification id","example":"1"}},"breaks":{"type":"array","items":{"type":"object","properties":{"start":{"type":"string","description":"Date and time of break start","example":"2026-06-01 03:32:50"},"break_length":{"type":"numeric","description":"The length of the break in hours and minutes","example":"0.5"},"break_is_payable":{"type":"boolean","description":"Flag to indicate if break is payable","enum":[0,1]}}}}}}}}}},"required":true},"operationId":"api_v1_employee-shift-log_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"attributes":{"type":"object","properties":{"allowances":{"type":"array","items":{"type":"object","properties":{"shift_id":{"type":"string","description":"Shift id","example":"528"},"allowance_id":{"type":"string","description":"Allowance id","example":"118"},"allowance_rate_id":{"type":"string","description":"Allowance rate id","example":"173"},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5},"title":{"type":"string","description":"Allowance title","example":"Forklift Allowance"},"award_title":{"type":"string","description":"Award title","example":"General Retail Industry Award"},"type":{"type":"string","description":"Allowance type","enum":["hourly","daily","hour (value by candidate)","km (value by candidate)","weekly","shift"]},"rates":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","description":"Allowance rate label","example":"First Aid Allowance"},"rate":{"type":"string","description":"Allowance rate","example":"0.97"}}}}}}},"unpaid_break_decimal":{"type":"integer","description":"Amount of unpaid break (hours)","example":0},"unpaid_break_label":{"type":"string","description":"Unpaid break label","example":"Casual Leave"},"shift_duration_label":{"type":"string","description":"Shift duration (human-readable)","example":"8:00"},"shift_duration_decimal":{"type":"integer","description":"Shift duration","example":8.5},"id":{"type":"integer","description":"Roster shift candidate id","example":11577},"employee_id":{"type":"integer","description":"Employee id","example":32},"position_id":{"type":"integer","description":"Position id","example":232},"position_group_id":{"type":"integer","description":"Position group id for this shift (if applicable)","example":1},"offer_status":{"type":"integer","description":"Offer status for this employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>to send<\/td><\/tr><tr><td>1<\/td><td>sent<\/td><\/tr><tr><td>2<\/td><td>accepted<\/td><\/tr><tr><td>3<\/td><td>declined<\/td><\/tr><tr><td>4<\/td><td>cancelled<\/td><\/tr><tr><td>5<\/td><td>reassigned<\/td><\/tr><tr><td>6<\/td><td>created by employee<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6]},"attendance_status":{"type":"integer","description":"Attendance status of this employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>default<\/td><\/tr><tr><td>1<\/td><td>cancelled by manager<\/td><\/tr><tr><td>2<\/td><td>cancelled by employee<\/td><\/tr><tr><td>3<\/td><td>employee sick<\/td><\/tr><tr><td>4<\/td><td>employee on holidays<\/td><\/tr><tr><td>5<\/td><td>employee no show<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5]},"offer_id":{"type":"integer","description":"Offer record id","example":1435},"did_not_work":{"type":"integer","description":"Flag that indicates if employee did not work\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"verification":{"type":"integer","description":"Verification status of the shift employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>verified<\/td><\/tr><tr><td>1<\/td><td>approved<\/td><\/tr><tr><td>2<\/td><td>rejected<\/td><\/tr><tr><td>3<\/td><td>pre-approved<\/td><\/tr><tr><td>4<\/td><td>on leave<\/td><\/tr><tr><td>5<\/td><td>automatically approved<\/td><\/tr><tr><td>6<\/td><td>submitted by employee<\/td><\/tr><tr><td>7<\/td><td>locked shift<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6,7]},"document":{"type":"integer","description":"Flag to show if employee has submitted documents for this shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"branch_id":{"type":"integer","description":"Roster branch id","example":29},"job_criteria_id":{"type":"integer","description":"Id for job criteria record","example":35},"has_tags_or_qualifications":{"type":"string","description":"Number of employee tags and\/or qualifications for this shift","example":"3"},"shift_start":{"type":"string","description":"Date and time when shift starts","example":"2026-06-01 03:32:50"},"shift_end":{"type":"string","description":"Date and time when shift ends","example":"2026-06-01 03:32:50"},"break_length":{"type":"string","description":"The length of shift break in decimal format (hours)","example":"1.50"},"deleted_at":{"type":"string","description":"Date and time when this roster employee record was deleted (if applicable)","example":"2026-06-01 03:32:50"},"until_required":{"type":"integer","description":"Flag to signify if employee is needed until shift ends","enum":[1,0]},"is_deleted":{"type":"integer","description":"Flag to indicate if this shift has been deleted","enum":[1,0]},"offer_status_label":{"type":"string","description":"Offer status label, corresponds to 'offer_status'","enum":["Pending","Offer Sent","Accepted","Declined","Cancelled","Reassigned"]},"attendance_status_label":{"type":"string","description":"Attendance status label, corresponds to 'attendance_status'","enum":["Cancelled by manager","Cancelled by employee","Sick","On holidays","No Show"]},"has_clock_log":{"type":"integer","description":"Number of clock log records","example":5},"has_approved_shift":{"type":"integer","description":"Flag to indicate if employee has approved shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"is_filled":{"type":"integer","description":"Flag to indicate if this shift has been filled","enum":[0,1]},"is_offered_shift":{"type":"integer","description":"Flag to indicate if this is offer shift","enum":[0,1]},"is_open_shift":{"type":"integer","description":"Flag to indicate if this is open shift","enum":[0,1]},"is_shortlist":{"type":"integer","description":"Flag to indicate if this shift is offering shortlist offers","enum":[0,1]}}},"errors":{"type":"object","properties":{"errors":{"type":"integer","description":"Number of errors found for this shift","example":10},"warnings":{"type":"integer","description":"Number of warnings found on this shift","example":5}}},"comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment","example":"Need this filled asap - replacement shift for Dan"},"type":{"type":"string","description":"Roster comment type","enum":["general","candidate_submitted"]},"employee_shift_id":{"type":"integer","description":"Employee shift id","example":11577},"user_id":{"type":"integer","description":"Id of admin user that created this record","example":1},"visible_to_employee":{"type":"integer","description":"Flag to indicate if this comment is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"created_at":{"type":"string","description":"Date and time when this comment was created","example":"2026-06-01 03:32:50"}}}},"position_number":{"type":"object","properties":{"number_positions":{"type":"integer","description":"Number of positions available for this shift","example":1},"shift_id":{"type":"integer","description":"Roster shift id","example":10562}}},"id":{"type":"integer","description":"Employee shift id","example":11577},"employee":{"type":"object","properties":{"id":{"type":"integer","description":"Employee id","example":32},"attributes":{"type":"object","properties":{"employment_type_by_date":{"type":"string","description":"Employment type as of date","enum":["Casual","Full-Time","Part-Time","Not Set"]},"employment_warning":{"type":"boolean","description":"Flag to indicate if employee has any unverified items on their checklists","enum":[true,false]},"employment_warning_detail":{"type":"array","items":{"type":"string","description":"Label of incomplete \/ unverified item on employee checklists","example":"Reference Check"}},"name":{"type":"string","description":"Employee name","example":"Adam Smith"},"email":{"type":"string","description":"Employee email address","example":"adam@test.com.au"},"mobile":{"type":"string","description":"Employee mobile number","example":"0412345560"},"profile_picture":{"type":"string","description":"URL for employee profile picture","example":"http:\/\/test.foundu.com.au \/secure\/documents\/candidate\/32\/images\/32.jpg"},"status":{"type":"string","description":"Employee status","enum":["Available","Unavailable","Pending","Unverified","Declined","Archived","Approved"]},"description":{"type":"string","description":"Employee description","example":"Network specialist proficient in the administration and management of multi-site, multi-operating global system"},"can_approve_shifts":{"type":"integer","description":"Flag to indicate if this employee can approve shifts\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"created_at":{"type":"string","description":"Date and time when employee record was created","example":"2026-06-01 03:32:50"},"accepted_at":{"type":"string","description":"Date and time when employee was accepted","example":"2026-06-01 03:32:50"},"reg_completed_at":{"type":"string","description":"Date and time when employee registration was completed","example":"2026-06-01 03:32:50"},"progress":{"type":"object","properties":{"percent":{"type":"integer","description":"Registration progress in percentage","example":80}}},"page":{"type":"integer","description":"Registration page this employee currently at","example":4},"preferred_name":{"type":"string","description":"Employee preferred name","example":"Ryan"},"surname":{"type":"string","description":"Employee family name","example":"Smith"},"first_preferred_name_with_surname":{"type":"string","description":"Employee first name and family name","example":"Adam Smith"},"is_ppt":{"type":"integer","description":"Flag to indicate if employee is a permanent \/ part-time employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"emp_type":{"type":"string","description":"Employment type","enum":["Casual","Part Time","Full Time"]},"reminder_count":{"type":"integer","description":"Flag to indicate how many reminders have been set for this employee","example":0},"employment_restriction":{"type":"integer","description":"Flag to indicate if this employee has restrictions\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"awaiting_verification":{"type":"integer","description":"Flag to indicate if this employee is still waiting for verification\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"has_workcover":{"type":"integer","description":"Flag to indicate if employee has workcover\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"has_special_condition":{"type":"integer","description":"Flag to indicate if employee has special conditions\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"job_keeper_eligible":{"type":"integer","description":"Flag to indicate if employee is eligible for JobKeeper payment\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"has_work_pattern":{"type":"integer","description":"Flag to indicate if employee has work pattern set\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]}}}}},"operation":{"type":"object","properties":{"id":{"type":"integer","description":"Operation id","example":19},"attributes":{"type":"object","properties":{"position_group_search":{"type":"integer","description":"Flag to indicate if position group search is enabled for this operation\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]}}}}},"branch":{"type":"object","properties":{"id":{"type":"integer","description":"Roster branch id","example":29},"attributes":{"type":"object","properties":{"loc_id":{"type":"integer","description":"Location id","example":1},"state_id":{"type":"integer","description":"State ID of the location of the roster branch\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>ACT<\/td><\/tr><tr><td>2<\/td><td>NSW<\/td><\/tr><tr><td>3<\/td><td>NT<\/td><\/tr><tr><td>4<\/td><td>QLD<\/td><\/tr><tr><td>5<\/td><td>SA<\/td><\/tr><tr><td>6<\/td><td>TAS<\/td><\/tr><tr><td>7<\/td><td>VIC<\/td><\/tr><tr><td>8<\/td><td>WA<\/td><\/tr><\/table>","enum":[1,2,3,4,5,6,7,8]},"short_label":{"type":"string","description":"Roster branch short label","example":"R2"},"name":{"type":"string","description":"Roster branch name","example":"Roster 2"},"street":{"type":"string","description":"Roster branch location street address","example":"2 Mayneview Street"},"suburb":{"type":"string","description":"Roster branch location suburb","example":"Milton"},"postcode":{"type":"string","description":"Roster branch location postcode","example":"4000"},"created_at":{"type":"string","description":"Date and time when this roster branch was created","example":"2026-06-01 03:32:50"},"contact_name":{"type":"string","description":"Roster branch contact name","example":"Alex Jones"},"contact_number":{"type":"string","description":"Roster branch contact number","example":"0412345678"},"po":{"type":"string","description":"Purchase order or cost code for this roster branch","example":"Cost Code 2"},"ordinary_hours":{"type":"number","description":"Ordinary hours setting for this roster branch","example":7.5},"roster_bg_color":{"type":"string","description":"Background colour setting for displaying this roster branch","example":"#ffffff"}}}}},"position":{"type":"object","properties":{"id":{"type":"integer","description":"Roster position id","example":232},"attributes":{"type":"object","properties":{"custom_position_title":{"type":"string","description":"Optional position title for the shift (if applicable)","example":"Adam's Position (Level 1)"},"name":{"type":"string","description":"Roster position name","example":"Level 1 - Retail Position"}}}}},"position_group":{"type":"object","properties":{"position_group_id":{"type":"string","description":"Employee position group id for shift","example":"1"},"title":{"type":"string","description":"Employee position group title for shift","example":"Position Group 1"}}},"offers":{"type":"array","items":{"type":"object","properties":{"offer_count":{"type":"integer","description":"offer number count","example":2},"roster_job_shift_candidate_id":{"type":"integer","description":"Roster shift candidate id","example":11577},"status":{"type":"integer","description":"Offer status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Pending<\/td><\/tr><tr><td>2<\/td><td>Accepted<\/td><\/tr><tr><td>3<\/td><td>Manually Assigned<\/td><\/tr><tr><td>4<\/td><td>Shortlist Requested<\/td><\/tr><tr><td>5<\/td><td>Declined<\/td><\/tr><tr><td>6<\/td><td>Expired<\/td><\/tr><tr><td>7<\/td><td>Cancelled<\/td><\/tr><\/table>","enum":[1,2,3,4,5,6,7,8]}}}}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/reason-list":{"get":{"tags":["Approved Shifts"],"summary":"Returns the list of absence for shift","operationId":"api_v1_reason-list_GET","parameters":[{"name":"filter_by_reason_types","in":"query","description":"Filter by the reason types separated by commas: Attendance = 1, Performance = 2, Termination = 3. eg: 1,3","required":false,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"filter by partial matches on the title","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. title:asc, title:desc","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/ReasonListTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/leave-rules":{"get":{"tags":["Leave and Time-off"],"summary":"List all leave rules","operationId":"api_v1_leave-rules_GET","parameters":[{"name":"filter","in":"query","description":"Filters leave rules by title\n","required":false,"schema":{"type":"string"}},{"name":"filter_pay_no_pay","in":"query","description":"Filters leave rules with paid or non-paid type ('pay' or 'nopay')\n","required":false,"schema":{"type":"string"}},{"name":"filter_entitlement","in":"query","description":"Filters out TOIL, RDO and Long Service Leave types\n","required":false,"schema":{"type":"string"}},{"name":"filter_skipped_ids","in":"query","description":"Filters the results by excluding given leave IDs\n","required":false,"schema":{"type":"string"}},{"name":"filter_by_id","in":"query","description":"Filters the results by leave IDs\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order by id, title","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/LeaveRuleTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/qualifications\/delete\/{id}":{"delete":{"tags":["Qualifications"],"summary":"Delete qualification by ID","operationId":"api_v1_qualifications_delete_{id}_DELETE","parameters":[{"name":"id","in":"path","description":"Qualification Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"}},"x-hideTryItPanel":true}},"\/api\/v1\/qualifications\/update":{"post":{"tags":["Qualifications"],"summary":"Update multiple qualifications at once","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"qualifications":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of the Qualification","example":"Bachelor of Arts"},"type":{"type":"string","description":"Type of Qualification","enum":["licence","induction","qualification"]},"capture_licence_number":{"type":"boolean","description":"Should licence number be captured?","enum":[true,false]},"expiry_type":{"type":"string","description":"Expiration Type (Assessment date or Expiration date)","enum":["assess","expiry"]},"expiry_warning_comms_settings":{"type":"array","description":"Settings for expiry warning communications using dynamic comms template settings","items":{"type":"object","properties":{"employee":{"type":"boolean","description":"Notify employee","example":false},"employeeManager":{"type":"boolean","description":"Notify employee manager","example":false},"specificUsers":{"type":"array","items":{"type":"integer","example":"123"},"description":"Specific admin-users to notify"}}}},"edited_record_comms_settings":{"type":"array","description":"Settings for edited record communications using dynamic comms template settings","items":{"type":"object","properties":{"employeeManager":{"type":"boolean","description":"Notify employee manager","example":false},"specificUsers":{"type":"array","items":{"type":"integer","example":"123"},"description":"Specific admin-users to notify"}}}},"show_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be displayed if employee has these tags; do not send this with 'hide_if_user_has_tag'","example":"29,102"},"hide_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be hidden if employee has these tags; do not send this with 'show_if_user_has_tag'","example":"100"},"assessment_days":{"type":"number","description":"For qualifications with \"expiry type: assess\", this is the number of days since last assessment before an employee is required to be reassessed","example":365},"external_id":{"type":"string","description":"External Id linked to this qualification","example":"Department_20_Qualification"},"id":{"type":"number","description":"Id of Qualification (required if updating)","example":17}}}}}}}},"required":true},"operationId":"api_v1_qualifications_update_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/qualifications\/add":{"post":{"tags":["Qualifications"],"summary":"Add new Qualifications","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"qualifications":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of the Qualification","example":"Bachelor of Arts"},"type":{"type":"string","description":"Type of Qualification","enum":["licence","induction","qualification"]},"capture_licence_number":{"type":"boolean","description":"Should licence number be captured?","enum":[true,false]},"expiry_type":{"type":"string","description":"Expiration Type (Assessment date or Expiration date)","enum":["assess","expiry"]},"expiry_warning_comms_settings":{"type":"array","description":"Settings for expiry warning communications using dynamic comms template settings","items":{"type":"object","properties":{"employee":{"type":"boolean","description":"Notify employee","example":false},"employeeManager":{"type":"boolean","description":"Notify employee manager","example":false},"specificUsers":{"type":"array","items":{"type":"integer","example":"123"},"description":"Specific admin-users to notify"}}}},"edited_record_comms_settings":{"type":"array","description":"Settings for edited record communications using dynamic comms template settings","items":{"type":"object","properties":{"employeeManager":{"type":"boolean","description":"Notify employee manager","example":false},"specificUsers":{"type":"array","items":{"type":"integer","example":"123"},"description":"Specific admin-users to notify"}}}},"show_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be displayed if employee has these tags; do not send this with 'hide_if_user_has_tag'","example":"29,102"},"hide_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be hidden if employee has these tags; do not send this with 'show_if_user_has_tag'","example":"100"},"assessment_days":{"type":"number","description":"For qualifications with \"expiry type: assess\", this is the number of days since last assessment before an employee is required to be reassessed","example":365},"external_id":{"type":"string","description":"External Id linked to this qualification","example":"Department_20_Qualification"}}}}}}}},"required":true},"operationId":"api_v1_qualifications_add_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Qualification Id","example":"123"},"name":{"type":"string","description":"Name of Qualification","example":"Bachelor of Arts"},"type":{"type":"string","description":"Type of Qualification","example":"qualification"},"capture_licence_number":{"type":"boolean","description":"Should licence number be captured?","example":true},"expiry_type":{"type":"string","description":"Expiration Type (Assessment date or Expiration date)","example":"expiry"},"show_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be displayed if employee has these tags; do not send this with 'hide_if_user_has_tag'","example":"29,102"},"hide_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be hidden if employee has these tags; do not send this with 'show_if_user_has_tag'","example":"100"},"assessment_days":{"type":"number","description":"For qualifications with \"expiry type: assess\", this is the number of days since last assessment before an employee is required to be reassessed","example":365},"external_id":{"type":"string","description":"External Id linked to this qualification","example":"Department_20_Qualification"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/tag-groups\/create":{"post":{"tags":["Tag Groups"],"summary":"Create a new tag group","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"tag_label":{"type":"string","description":"Name \/ label of the new tag group","example":"New Tag Group"},"hide_tag_in_create_job_and_roster":{"type":"string","description":"Should tag group be hidden when creating job \/ roster?","enum":[true,false]}}}}},"required":true},"operationId":"api_v1_tag-groups_create_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Status of the request","enum":[true,false]},"tag_group_id":{"type":"number","description":"Newly-created tag group id","example":8}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/tag-groups\/edit":{"post":{"tags":["Tag Groups"],"summary":"Edit a specific tag group","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"id":{"type":"number","description":"Id of the tag group to be edited","example":8},"tag_label":{"type":"string","description":"New name \/ label of the tag group","example":"Brisbane Tag Group"},"hide_tag_in_create_job_and_roster":{"type":"string","description":"Should tag group be hidden when creating job \/ roster?","enum":[true,false]}}}}},"required":true},"operationId":"api_v1_tag-groups_edit_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Status of the request","enum":[true,false]},"tag_group_id":{"type":"number","description":"Edited tag group id","example":8},"error_messages":{"type":"array","items":{"type":"object","properties":{"error":{"type":"string","description":"Error message received when processing the request, if available","example":"No query results found for TagGroup 8"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/tag-groups\/delete":{"post":{"tags":["Tag Groups"],"summary":"Delete a specific tag group","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"id":{"type":"number","description":"Id of tag group to be deleted","example":8}}}}},"required":true},"operationId":"api_v1_tag-groups_delete_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Status of the request","enum":[true,false]},"error_messages":{"type":"array","items":{"type":"object","properties":{"error":{"type":"string","description":"Error message received when processing the request, if available","example":"No query results found for TagGroup 8"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/tags":{"get":{"tags":["Tags"],"summary":"Search tags","operationId":"api_v1_tags_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"tag-group,tagGroup"}},{"name":"filter","in":"query","description":"Filter results based on id or label\n","required":false,"schema":{"type":"string"}},{"name":"filter_ids","in":"query","description":"Filter by tag ids","required":false,"schema":{"type":"string"}},{"name":"filter_name","in":"query","description":"Filter by tag label\n","required":false,"schema":{"type":"string"}},{"name":"filter_tag_group_id","in":"query","description":"Filter by tag group id\n","required":false,"schema":{"type":"string"}},{"name":"filter_exclude_hidden_roster_tags","in":"query","description":"Exclude any tags marked as hidden from Create Job\/Roster\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 3000 per page.","required":false,"schema":{"type":"integer"}},{"name":"filter_updated_since","in":"query","description":"Filters the results to records updated since timestamp\n","required":false,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/TagTransformer"}},"included":{"type":"object","properties":{"tag-group-{id}":{"type":"object","$ref":"#\/components\/schemas\/TagGroupTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/tags\/{id}":{"get":{"tags":["Tags"],"summary":"Get tag by Id","operationId":"api_v1_tags_{id}_GET","parameters":[{"name":"id","in":"path","description":"Tag Id","required":true,"schema":{"type":"integer"}},{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"tag-group,tagGroup"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/TagTransformer"},"included":{"type":"object","properties":{"tag-group-{id}":{"type":"object","$ref":"#\/components\/schemas\/TagGroupTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/tags\/create":{"post":{"tags":["Tags"],"summary":"Create a new tag","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"tag_label":{"type":"string","description":"Name \/ label of the new tag","example":"New Tag"},"tag_group_id":{"type":"number","description":"ID of the tag group to attach to","example":"10"}}}}},"required":true},"operationId":"api_v1_tags_create_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Status of the request","enum":[true,false]},"tag_id":{"type":"number","description":"Newly-created tag id","example":8}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/tags\/edit":{"post":{"tags":["Tags"],"summary":"Edit a specific tag","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"id":{"type":"number","description":"Id of the tag to be edited","example":8},"tag_label":{"type":"string","description":"New name \/ label of the tag","example":"Brisbane Tag"}}}}},"required":true},"operationId":"api_v1_tags_edit_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Status of the request","enum":[true,false]},"tag_id":{"type":"number","description":"Edited tag id","example":8}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/tags\/delete":{"post":{"tags":["Tags"],"summary":"Delete a specific tag","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"id":{"type":"number","description":"Id of tag to be deleted","example":8}}}}},"required":true},"operationId":"api_v1_tags_delete_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Status of the request","enum":[true,false]}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/qualifications":{"get":{"tags":["Qualifications"],"summary":"Returns the list of Qualifications","operationId":"api_v1_qualifications_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"specificAdminList"}},{"name":"filter","in":"query","description":"Filter by qualification id\n","required":false,"schema":{"type":"string"}},{"name":"filter_name","in":"query","description":"Filter by qualification name\n","required":false,"schema":{"type":"string"}},{"name":"filter_type","in":"query","description":"Filter by qualification type ('licence', 'induction', or 'qualification')\n","required":false,"schema":{"type":"string"}},{"name":"filter_external_id","in":"query","description":"Filter by comma delimitered ids (eg: 'abc123,abc124')","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}},{"name":"filter_updated_since","in":"query","description":"Filters the results to records updated since timestamp\n","required":false,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/QualificationTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/qualifications\/{id}":{"get":{"tags":["Qualifications"],"summary":"Returns the details of a specific Qualification","operationId":"api_v1_qualifications_{id}_GET","parameters":[{"name":"id","in":"path","description":"Qualification Id","required":true,"schema":{"type":"integer"}},{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"specificAdminList"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/QualificationTransformer"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/state":{"get":{"tags":["Work Location"],"summary":"Returns state values","operationId":"api_v1_state_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"*":{"type":"array","items":{"type":"object","properties":{"state":{"type":"string","description":"State (abbreviated)","example":"QLD"},"state_id":{"type":"integer","description":"State id","example":4}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/clock-logs":{"get":{"tags":["Clock"],"summary":"Returns clock in \/ out records","operationId":"api_v1_clock-logs_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"branch,client,employee,roster_shift_breaks,candidate"}},{"name":"filter_date_from","in":"query","description":"Filter results by shift start or shift end after specific date\n","required":false,"schema":{"type":"string"}},{"name":"filter_date_to","in":"query","description":"Filter results by shift start or shift end before specific date\n","required":false,"schema":{"type":"string"}},{"name":"filter_operation","in":"query","description":"Filter results by operation Id\n","required":false,"schema":{"type":"string"}},{"name":"filter_roster","in":"query","description":"Filter results by roster Id\n","required":false,"schema":{"type":"string"}},{"name":"filter_employee","in":"query","description":"Filter results by employee Id\n","required":false,"schema":{"type":"string"}},{"name":"filter_on_site_personnel_only","in":"query","description":"Filter results to only return active shifts\n","required":false,"schema":{"type":"string"}},{"name":"filter_string","in":"query","description":"Filter results by employee names, branch title or operation matching search term\n","required":false,"schema":{"type":"string"}},{"name":"filter_auto_pay","in":"query","description":"Filter results by salaried employees\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order results by shift Id, shift start, shift end, comment start, comment end, break start, break end,\nemployee Id, operation Id, branch Id, date and duration\n","required":false,"schema":{"type":"string"}},{"name":"filter_clocked_status","in":"query","description":"Filter results by the following status:\n- clocked_with_missing_times\n- clocked_with_location_issues\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}},{"name":"filter_updated_since","in":"query","description":"Filters the results to records updated since timestamp\n","required":false,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/ClockLogTransformer"}},"included":{"type":"object","properties":{"branch-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterBranchTransformer"},"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientTransformer"},"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"},"location-{id}":{"type":"object","$ref":"#\/components\/schemas\/LocationTransformer"},"employee-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeTransformer"},"roster_shift_breaks-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterShiftBreakTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/comments\/candidate":{"post":{"tags":["Employee Comments"],"summary":"Add comment to employee profile","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"comment":{"type":"object","properties":{"attributes":{"type":"object","properties":{"user_id":{"type":"string","description":"Employee id","example":"10"},"staff_id":{"type":"string","description":"Id of administrator who create this comment","example":"1"},"description_id":{"type":"string","description":"Id of comment category, for example 37 for General Comments (refer to \/api\/v1\/comments\/candidate\/description for full list)","example":"37"},"comment":{"type":"string","description":"Content of comment to be saved","example":"Test comment"},"is_candidate":{"type":"boolean","description":"Is this an employee comment?","enum":[true,false]},"is_client":{"type":"boolean","description":"Is this an operation comment?","enum":[true,false]},"created_by_id":{"type":"string","description":"Id of administrator who created this comment","example":"1"},"visible":{"type":"boolean","description":"Should this comment be visible to employee?","enum":[true,false]}}}}}}}}},"required":true},"operationId":"api_v1_comments_candidate_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Status of the update request","enum":[true,false]},"row_id":{"type":"number","description":"Id of the new comment record","example":111}}}}}}},"x-hideTryItPanel":true},"get":{"tags":["Employee Comments"],"summary":"Returns a list of employee comments","operationId":"api_v1_comments_candidate_GET","parameters":[{"name":"order","in":"query","description":"Order results by 'timestamp'. Acceptable values are `asc` or `desc`\n","required":false,"schema":{"type":"string"}},{"name":"filter_candidate_id","in":"query","description":"Filter by employee id\n","required":false,"schema":{"type":"string"}},{"name":"filter_client_id","in":"query","description":"Filter by operation id\n","required":false,"schema":{"type":"string"}},{"name":"filter_timestamp","in":"query","description":"Filters the comment timestamp from a specific date time (inclusive)\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/CommentTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/comments\/candidate\/description":{"get":{"tags":["Employee Comments"],"summary":"Get comment descriptions","operationId":"api_v1_comments_candidate_description_GET","responses":{"403":{"description":"Not authorised"}},"x-hideTryItPanel":true}},"\/api\/v1\/get-all-email-templates":{"get":{"tags":["Custom Communication Templates"],"summary":"Returns the list of email templates","operationId":"api_v1_get-all-email-templates_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/EmailTemplateTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/get-all-sms-templates":{"get":{"tags":["Custom Communication Templates"],"summary":"Returns the list of sms templates","operationId":"api_v1_get-all-sms-templates_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/SMSTemplateTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/employees\/{id}\/positions":{"get":{"tags":["Positions"],"summary":"Get all employee position information (including historical positions)","operationId":"api_v1_employees_{id}_positions_GET","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}},{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"positions,position-location,employee-permanent-part-time-positions,position-entitlement-settings"}},{"name":"filter_current_positions","in":"query","description":"Filter current positions by 'effective_end_date', where 'effective_end_date' is blank or in the future\n","required":false,"schema":{"type":"string"}},{"name":"filter_casual_positions","in":"query","description":"Returns only casual positions\n","required":false,"schema":{"type":"string"}},{"name":"filter_permanent_part_time_positions","in":"query","description":"Returns permanent or part-time positions\n","required":false,"schema":{"type":"string"}},{"name":"filter_position_name_search","in":"query","description":"Filters the position by specified name (including custom position title)\n","required":false,"schema":{"type":"string"}},{"name":"filter_dates_between","in":"query","description":"Filters the position by specified dates\n","required":false,"schema":{"type":"string"}},{"name":"filter_operation_id","in":"query","description":"Filters the position by operation id\n\n","required":false,"schema":{"type":"string"}},{"name":"filter_state_id","in":"query","description":"Filters the position by state id","required":false,"schema":{"type":"string"}},{"name":"filter_employee_id","in":"query","description":"","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/EmployeePositionTransformer"}},"included":{"type":"object","properties":{"positions-{id}":{"type":"object","$ref":"#\/components\/schemas\/PositionTransformer"},"classification-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClassificationTransformer"},"award_allowance_group-{id}":{"type":"object","$ref":"#\/components\/schemas\/AwardAllowanceGroupTransformer"},"position-location-{id}":{"type":"object","$ref":"#\/components\/schemas\/PositionLocationTransformer"},"location-{id}":{"type":"object","$ref":"#\/components\/schemas\/LocationTransformer"},"employee-permanent-part-time-positions-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeePermptTransformer"},"position-entitlement-settings-{id}":{"type":"object","$ref":"#\/components\/schemas\/PositionEntitlementSettingsTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/clients":{"get":{"tags":["Operations"],"summary":"List operations","operationId":"api_v1_clients_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"operation-tags"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order by id, name, trade_name, office_code or rep_id\n","required":false,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"Primary search function for finding operations. Will filter via id, name, trade_name, phone, admin_email or acc_email","required":false,"schema":{"type":"string"}},{"name":"filter_by_id","in":"query","description":"Filter by a csv of ids eg. 10,12,15\n","required":false,"schema":{"type":"string"}},{"name":"filter_weekly_shift","in":"query","description":"Filter weekly shift\n","required":false,"schema":{"type":"string"}},{"name":"filter_weekly_job","in":"query","description":"Filter weekly job\n","required":false,"schema":{"type":"string"}},{"name":"filter_status","in":"query","description":"Filter operations by their status\nAvailable status: Approved, Archived, Declined, Unverified\n","required":false,"schema":{"type":"string"}},{"name":"filter_job_type","in":"query","description":"","required":false,"schema":{"type":"string"}},{"name":"filter_tags","in":"query","description":"Filter operations by tags\n","required":false,"schema":{"type":"string"}},{"name":"filter_suburbs","in":"query","description":"Filter operations by suburbs\n","required":false,"schema":{"type":"string"}},{"name":"filter_pay_period","in":"query","description":"Filter operations by pay period\n","required":false,"schema":{"type":"string"}},{"name":"filter_state","in":"query","description":"Filter operations by state\n","required":false,"schema":{"type":"string"}},{"name":"filter_state_id","in":"query","description":"","required":false,"schema":{"type":"string"}},{"name":"filter_managers","in":"query","description":"Filter operations by managers\n","required":false,"schema":{"type":"string"}},{"name":"filter_ids","in":"query","description":"Filter operations by Ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_operation_ids","in":"query","description":"Filter operations by Ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_code","in":"query","description":"Filter operations by office code\n","required":false,"schema":{"type":"string"}},{"name":"filter_position_ids","in":"query","description":"Filter operations by position ids\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1500 per page.","required":false,"schema":{"type":"integer"}},{"name":"filter_updated_since","in":"query","description":"Filters the results to records updated since timestamp\n","required":false,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/ClientTransformer"}},"included":{"type":"object","properties":{"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"}}}}}}}}},"x-hideTryItPanel":true},"post":{"tags":["Operations"],"summary":"Creates a new operation","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"company_name":{"type":"string","description":"Operation company name","example":"Test Operation Pty Ltd"},"trade_name":{"type":"string","description":"Operation trade name","example":"Futuristic Pty Ltd"},"abn":{"type":"string","description":"Operation ABN (11 digits)","example":"50110219460"},"postal_address":{"type":"string","description":"Operation postal address","example":"2 Mayneview Street, Milton, QLD 4064"},"office_address":{"type":"string","description":"Operation office address","example":"2 Mayneview Street, Milton, QLD 4064"},"phone":{"type":"string","description":"Operation landline number","example":"0733224455"},"mobile":{"type":"string","description":"Operation mobile number","example":"0412345678"},"admin_email":{"type":"string","description":"Operation admin email address","example":"test@operation.com.au"},"account_email":{"type":"string","description":"Operation account email address","example":"account@operation.com.au"},"payment_method":{"type":"string","description":"Operation payment method","enum":["EFT","Cheque","Credit Card","Paypal"]}}}}},"required":true},"operationId":"api_v1_clients_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"operation_id":{"type":"integer","example":43}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/clients\/{id}":{"get":{"tags":["Operations"],"summary":"Get operation details by ID","operationId":"api_v1_clients_{id}_GET","parameters":[{"name":"id","in":"path","description":"Operation ID","required":true,"schema":{"type":"integer"}},{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"operation-tags"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order by id, name, trade_name, office_code or rep_id\n","required":false,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"Primary search function for finding operations. Will filter via id, name, trade_name, phone, admin_email or acc_email","required":false,"schema":{"type":"string"}},{"name":"filter_by_id","in":"query","description":"Filter by a csv of ids eg. 10,12,15\n","required":false,"schema":{"type":"string"}},{"name":"filter_weekly_shift","in":"query","description":"Filter weekly shift\n","required":false,"schema":{"type":"string"}},{"name":"filter_weekly_job","in":"query","description":"Filter weekly job\n","required":false,"schema":{"type":"string"}},{"name":"filter_status","in":"query","description":"Filter operations by their status\nAvailable status: Approved, Archived, Declined, Unverified\n","required":false,"schema":{"type":"string"}},{"name":"filter_job_type","in":"query","description":"","required":false,"schema":{"type":"string"}},{"name":"filter_tags","in":"query","description":"Filter operations by tags\n","required":false,"schema":{"type":"string"}},{"name":"filter_suburbs","in":"query","description":"Filter operations by suburbs\n","required":false,"schema":{"type":"string"}},{"name":"filter_pay_period","in":"query","description":"Filter operations by pay period\n","required":false,"schema":{"type":"string"}},{"name":"filter_state","in":"query","description":"Filter operations by state\n","required":false,"schema":{"type":"string"}},{"name":"filter_state_id","in":"query","description":"","required":false,"schema":{"type":"string"}},{"name":"filter_managers","in":"query","description":"Filter operations by managers\n","required":false,"schema":{"type":"string"}},{"name":"filter_ids","in":"query","description":"Filter operations by Ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_operation_ids","in":"query","description":"Filter operations by Ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_code","in":"query","description":"Filter operations by office code\n","required":false,"schema":{"type":"string"}},{"name":"filter_position_ids","in":"query","description":"Filter operations by position ids\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1500 per page.","required":false,"schema":{"type":"integer"}},{"name":"filter_updated_since","in":"query","description":"Filters the results to records updated since timestamp\n","required":false,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/ClientTransformer"},"included":{"type":"object","properties":{"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/clients\/{id}\/tags":{"get":{"tags":["Operations"],"summary":"Get operation tags","operationId":"api_v1_clients_{id}_tags_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/OperationTagTransformer"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/operation-pay-rates":{"get":{"tags":["Operations"],"summary":"Returns operation pay rates based on various filters","operationId":"api_v1_operation-pay-rates_GET","parameters":[{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order by id or operation_id\n","required":false,"schema":{"type":"string"}},{"name":"filter_operation_id","in":"query","description":"Filters the list by operation id\n","required":false,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"Primary filter function for finding operation pay rate. Will filter by id\n","required":false,"schema":{"type":"string"}},{"name":"filter_position_id","in":"query","description":"Filters the list by position id\n","required":false,"schema":{"type":"string"}},{"name":"filter_position_ids","in":"query","description":"Filters the list by a comma-separated list of position ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_payroll_tax_id","in":"query","description":"Filters the list by payroll tax id\n","required":false,"schema":{"type":"string"}},{"name":"filter_rate_label","in":"query","description":"Filters the list by rate label\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/OperationPayRatesTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/paycycle":{"get":{"tags":["Paycycle"],"summary":"Get paycycle collection","operationId":"api_v1_paycycle_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"pay_item,employee-status,deduction"}},{"name":"filter","in":"query","description":"Filter by paycycle id, employee id, employee first name, surname, net, gross, tax, super or timesheet ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_ids","in":"query","description":"Filter by paycycle id\n","required":false,"schema":{"type":"string"}},{"name":"filter_candidate_id","in":"query","description":"Filter by candidate id\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_codes","in":"query","description":"Filter by paycycle office code\n","required":false,"schema":{"type":"string"}},{"name":"filter_batch_ids","in":"query","description":"Filter by pay batch ids, comma separated format\n","required":false,"schema":{"type":"string"}},{"name":"filter_employment_types","in":"query","description":"Filter by array of employment types","required":false,"schema":{"type":"string"}},{"name":"filter_client_ids","in":"query","description":"Filter by an array of operation ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_pay_period","in":"query","description":"Filter by a selected pay period","required":false,"schema":{"type":"string"}},{"name":"filter_financial_year","in":"query","description":"Filter by financial year\n","required":false,"schema":{"type":"string"}},{"name":"filter_employee_conditions","in":"query","description":"Apply additional filters to employee condition listing\n","required":false,"schema":{"type":"string"}},{"name":"filter_payslip_conditions","in":"query","description":"Apply additional filters to payslip listing\n","required":false,"schema":{"type":"string"}},{"name":"filter_income_types","in":"query","description":"Apply additional filters to income type listing\n","required":false,"schema":{"type":"string"}},{"name":"filter_paycycle_date_type","in":"query","description":"Determine the date value to use. `period_ending` (default) or `payment`\n","required":false,"schema":{"type":"string","enum":["period_ending","payment"]}},{"name":"filter_paycycle_date","in":"query","description":"Filter by paycycle period end or payment date. See paycycle_date_type to select available options. Cannot be used with date range filters\n","required":false,"schema":{"type":"string"}},{"name":"filter_paycycle_date_range_start","in":"query","description":"Filter by paycycle period end or payment date starting. See paycycle_date_type to select available options. Cannot be used with single date filter\n","required":false,"schema":{"type":"string"}},{"name":"filter_paycycle_date_range_end","in":"query","description":"Filter by paycycle period end or payment date ending. See paycycle_date_type to select available options. Cannot be used with single date filter\n","required":false,"schema":{"type":"string"}},{"name":"filter_last_updated_since","in":"query","description":"Filter by when a paycycle was last updated (inclusive of search value). Accepts timestamp (date and time).\n","required":false,"schema":{"type":"string"}},{"name":"filter_processed","in":"query","description":"Filter by paycycle status, if true then filter processed & ones are in progress, else filter pending,\nrequire reprocess paycycles or error\n","required":false,"schema":{"type":"boolean","enum":["true","false"]}},{"name":"filter_template","in":"query","description":"Filter by paycycle is_template flag\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order by name, process_at, week_end_date, total_hours, gross, tax, deductions, net, super\n","required":false,"schema":{"type":"string"}},{"name":"filter_employee_ids","in":"query","description":"Filter by employee ids (comma-separated)","required":false,"schema":{"type":"string"}},{"name":"filter_apar_sync_list","in":"query","description":"Returns paycycles that are not yet synchronised with the Advanced Payroll Activity Report\n","required":false,"schema":{"type":"string"}},{"name":"filter_status","in":"query","description":"Returns paycycles that contains specific status\n","required":false,"schema":{"type":"string"}},{"name":"filter_aba_id","in":"query","description":"This filter will allow to view payslips associated with the ABA ID on the \"Generated Payslips\" tab.\n","required":false,"schema":{"type":"string"}},{"name":"filter_income_stream","in":"query","description":"Filter employees by income stream eg: SAW, WHMFR\n","required":false,"schema":{"type":"string"}},{"name":"filter_tag_group","in":"query","description":"Filter by tag group and employee tags\n","required":false,"schema":{"type":"string"}},{"name":"filter_employee_tags","in":"query","description":"Filter by employee tags (comma-separated).\nRequires `filter_tag_group` to be set.\n","required":false,"schema":{"type":"string"}},{"name":"filter_award","in":"query","description":"Filter by award and positions\n","required":false,"schema":{"type":"string"}},{"name":"filter_positions","in":"query","description":"Filter by positions (comma-separated).\nRequires `filter_award` to be set.\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/PaycycleCandidateTransformer"}},"included":{"type":"object","properties":{"pay_item-{id}":{"type":"object","$ref":"#\/components\/schemas\/PaycyclePayItemTransformer"},"employee-status-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeStatusTransformer"},"deduction-{id}":{"type":"object","$ref":"#\/components\/schemas\/PaycycleDeductionTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/etp":{"get":{"tags":["ETP"],"summary":"Get all ETP records","operationId":"api_v1_etp_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"etp-payment"}},{"name":"filter","in":"query","description":"Filter results by search term on Record Id, Employee Id, Employee Names, ETP code, ETP Type, Total Payment,\nPayment Date or Financial Year (Example: Entering '2' as search term will look for '2' in Record Id, Employee Id,\nEmployee Names, ETP code, etc.)\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_code","in":"query","description":"Filter by Office Code Id\n","required":false,"schema":{"type":"string"}},{"name":"filter_payment_date","in":"query","description":"Filter by payment date\n","required":false,"schema":{"type":"string"}},{"name":"filter_financial_year","in":"query","description":"Filter by financial year\n","required":false,"schema":{"type":"string"}},{"name":"filter_etp_code_type","in":"query","description":"Filter by ETP code type\n","required":false,"schema":{"type":"string"}},{"name":"filter_processed","in":"query","description":"Filter by processed status (\"true\" or \"false\")\n","required":false,"schema":{"type":"string"}},{"name":"filter_candidate_id","in":"query","description":"Filter by Candidate Id\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order by Payment Id, Employee Name, Payment Date, Employee Id, Total Payment or Financial Year\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/EtpDocumentTransformer"}},"included":{"type":"object","properties":{"etp-payment-{id}":{"type":"object","$ref":"#\/components\/schemas\/EtpPaymentTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/employee\/{id}\/payslip\/{payslipId}":{"get":{"tags":["Payslip"],"summary":"Retrieve an employee's payslip","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"id":{"type":"integer","description":"Employee Id","example":30},"payslipId":{"type":"integer","description":"Payslip Id","example":1024}}}}},"required":true},"operationId":"api_v1_employee_{id}_payslip_{payslipId}_GET","parameters":[{"name":"id","in":"path","description":"       Employee Id","required":true,"schema":{"type":"integer"}},{"name":"payslipId","in":"path","description":"Payslip Id","required":true,"schema":{"type":"integer"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"404":{"description":"Payslip not found","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Request status","example":true},"message":{"type":"string","description":"Currently this returns a message for a 404 status if a payslip PDF with specific ID cannot be found, or no PDF files found at all","example":"Payslip not found"}}}}}},"200":{"description":"A file response"}},"x-hideTryItPanel":true}},"\/api\/v1\/employee\/{id}\/payslips":{"get":{"tags":["Payslip"],"summary":"Retrieve all employee's payslips","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"id":{"type":"integer","description":"Employee Id","example":30}}}}},"required":true},"operationId":"api_v1_employee_{id}_payslips_GET","responses":{"403":{"description":"Not authorised"},"404":{"description":"Payslip not found","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Request status","example":true},"message":{"type":"string","description":"Currently this returns a message for a 404 status if a payslip PDF with specific ID cannot be found, or no PDF files found at all","example":"Payslip not found"}}}}}},"200":{"description":"A file response"}},"x-hideTryItPanel":true}},"\/api\/v1\/reimbursement-types":{"get":{"tags":["Reimbursements"],"summary":"Gets all reimbursements types","operationId":"api_v1_reimbursement-types_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/ReimbursementTypeTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/reimbursement-types\/{id}":{"get":{"tags":["Reimbursements"],"summary":"Returns a specific type of reimbursement","operationId":"api_v1_reimbursement-types_{id}_GET","parameters":[{"name":"id","in":"path","description":"Reimbursement type Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/ReimbursementTypeTransformer"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/positions":{"get":{"tags":["Positions"],"summary":"Returns all position details recorded in the system","operationId":"api_v1_positions_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"*":{"type":"array","items":{"type":"object","properties":{"position":{"type":"string","description":"Position label","example":"Service Delivery Co-ordinator [Full Time]"},"ID":{"type":"integer","description":"Position id","example":2},"short_title":{"type":"string","description":"Short title for this position","example":"Social Services Employee"},"position_base_rate":{"type":"number","description":"Base rate for this position","example":21.57},"position_casual_rate":{"type":"number","description":"Casual rate for this position","example":26.96},"is_no_pay_award":{"type":"integer","description":"Is this a no pay position?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/invoice\/list\/pending":{"get":{"tags":["Invoices"],"summary":"Search for pending invoices","operationId":"api_v1_invoice_list_pending_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"client"}},{"name":"filter","in":"query","description":"Filter by id, c_id, trade_name, name, po (purchase order), net, total, end, gen, or ts_ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_code","in":"query","description":"Filter by office_code\n","required":false,"schema":{"type":"string"}},{"name":"filter_operation","in":"query","description":"Filter by operation id (c_id)\n","required":false,"schema":{"type":"string"}},{"name":"filter_cash_basis","in":"query","description":"Filter invoice based off the issue date instead of the period ending.\n","required":false,"schema":{"type":"boolean","enum":["true","false"]}},{"name":"filter_from_date","in":"query","description":"Filter by 'from date'\n","required":false,"schema":{"type":"string"}},{"name":"filter_ids","in":"query","description":"Filter by Ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_to_date","in":"query","description":"Filter by 'to date'\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order results by 'id', 'net_amount', 'total_amount', 'end', 'po', or 'issue' ('asc' or 'desc')\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/PendingInvoiceTransformer"}},"included":{"type":"object","properties":{"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientTransformer"},"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/invoice\/list\/deleted":{"get":{"tags":["Invoices"],"summary":"Search for deleted invoices","operationId":"api_v1_invoice_list_deleted_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"client,invoice-details"}},{"name":"filter","in":"query","description":"Filter by id, ref, po, trade_name, name, net, total, or end\n","required":false,"schema":{"type":"string"}},{"name":"filter_invoice_status","in":"query","description":"Filter by 'status'\n","required":false,"schema":{"type":"string"}},{"name":"filter_email_status","in":"query","description":"Filter by 'sent' status\n","required":false,"schema":{"type":"string"}},{"name":"filter_cash_basis","in":"query","description":"Filter invoice based off the issue date instead of the period ending.\n","required":false,"schema":{"type":"boolean","enum":["true","false"]}},{"name":"filter_from_date","in":"query","description":"Filter by 'gen' (if cash basis is used) or 'end' for \"start date\"\n","required":false,"schema":{"type":"string"}},{"name":"filter_to_date","in":"query","description":"Filter by 'gen' (if cash basis is used) or 'end' for \"to date\"\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order results by 'id', 'net_amount', 'total_amount', 'period_ending', 'po' (order 'asc' or 'desc')\n","required":false,"schema":{"type":"string"}},{"name":"filter_ids","in":"query","description":"Filter by Ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_code","in":"query","description":"Filter by 'office_code'\n","required":false,"schema":{"type":"string"}},{"name":"filter_operation","in":"query","description":"Filter by 'c_id'\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/GeneratedInvoiceTransformer"}},"included":{"type":"object","properties":{"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientTransformer"},"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"},"invoice-details-{id}":{"type":"object","$ref":"#\/components\/schemas\/IssuedInvoiceDetailsTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/invoice\/list\/issued":{"get":{"tags":["Invoices"],"summary":"Search for issued invoices","operationId":"api_v1_invoice_list_issued_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"client,invoice-details"}},{"name":"filter","in":"query","description":"Filter by id, ref, po, trade_name, name, net, total, or end\n","required":false,"schema":{"type":"string"}},{"name":"filter_ids","in":"query","description":"Filter by Ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_code","in":"query","description":"Filter by 'office_code'\n","required":false,"schema":{"type":"string"}},{"name":"filter_operation","in":"query","description":"Filter by 'c_id'\n","required":false,"schema":{"type":"string"}},{"name":"filter_invoice_status","in":"query","description":"Filter by 'status'\n","required":false,"schema":{"type":"string"}},{"name":"filter_email_status","in":"query","description":"Filter by 'sent' status\n","required":false,"schema":{"type":"string"}},{"name":"filter_cash_basis","in":"query","description":"Filter invoice based off the issue date instead of the period ending.\n","required":false,"schema":{"type":"boolean","enum":["true","false"]}},{"name":"filter_from_date","in":"query","description":"Filter by 'gen' (if cash basis is used) or 'end' for \"start date\"\n","required":false,"schema":{"type":"string"}},{"name":"filter_to_date","in":"query","description":"Filter by 'gen' (if cash basis is used) or 'end' for \"to date\"\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order results by 'id', 'net_amount', 'total_amount', 'period_ending', 'po' (order 'asc' or 'desc')\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/GeneratedInvoiceTransformer"}},"included":{"type":"object","properties":{"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientTransformer"},"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"},"invoice-details-{id}":{"type":"object","$ref":"#\/components\/schemas\/IssuedInvoiceDetailsTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/invoice\/issued\/{invoiceId}":{"get":{"tags":["Invoices"],"summary":"Issued invoice details","operationId":"api_v1_invoice_issued_{invoiceId}_GET","parameters":[{"name":"invoiceId","in":"path","description":"Invoice Id","required":true,"schema":{"type":"integer"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/GeneratedInvoiceTransformer"},"included":{"type":"object","properties":{"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientTransformer"},"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"},"invoice-details-{id}":{"type":"object","$ref":"#\/components\/schemas\/IssuedInvoiceDetailsTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v1\/invoice\/issued\/{invoiceId}\/document":{"get":{"tags":["Invoices"],"summary":"Issued invoice document","operationId":"api_v1_invoice_issued_{invoiceId}_document_GET","parameters":[{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"404":{"description":"Invoice not found","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Request status","example":true},"message":{"type":"string","description":"Currently this returns a message for a 404 status if a invoice PDF with specific ID cannot be found, or no PDF files found at all","example":"Invoice not found"}}}}}},"200":{"description":"A file response"}},"x-hideTryItPanel":true}},"\/api\/v1\/leave\/leave-applications":{"get":{"tags":["Leave and Time-off"],"summary":"Returns a list of leave applications","operationId":"api_v1_leave_leave-applications_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"leave-rule,leave-application-file,leave-application-hours,leave-shift,logs,note-creator,employee,leaveRule,file,leaveApplicationHours,leaveShift,lastActionUser,logStatus,leaveLedger,leaveLedgerV2"}},{"name":"filter_string","in":"query","description":"Filters list by employee id, first name, last name or preferred name\n","required":false,"schema":{"type":"string"}},{"name":"filter_employee_id","in":"query","description":"Filters list by employee id\n","required":false,"schema":{"type":"string"}},{"name":"filter_branches","in":"query","description":"Filters list by branch ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_employee_type","in":"query","description":"Filters list by employee types\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_code","in":"query","description":"Filters list by office codes\n","required":false,"schema":{"type":"string"}},{"name":"filter_operations","in":"query","description":"Filters list by operation ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_approved","in":"query","description":"Filters list to return approved leave applications\n","required":false,"schema":{"type":"string"}},{"name":"filter_leave_status","in":"query","description":"","required":false,"schema":{"type":"string"}},{"name":"filter_dates_between","in":"query","description":"Filters list to return applications where dates fall between starting and ending dates (comma-separated start and end dates)\n","required":false,"schema":{"type":"string"}},{"name":"filter_upcoming","in":"query","description":"Filters list to return upcoming applications","required":false,"schema":{"type":"string"}},{"name":"filter_completed","in":"query","description":"Filters list to return completed applications\n","required":false,"schema":{"type":"string"}},{"name":"filter_in_progress","in":"query","description":"Filters list to return in progress leave applications\n","required":false,"schema":{"type":"string"}},{"name":"filter_employees","in":"query","description":"Filters list by employee ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_start_date","in":"query","description":"Filters applications where the start date matches the provided date\n","required":false,"schema":{"type":"string"}},{"name":"filter_from_date","in":"query","description":"Filters list to return all applications after certain date (inclusive)\n","required":false,"schema":{"type":"string"}},{"name":"filter_to_date","in":"query","description":"Filters list to return all applications before certain date\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order by Leave Application ID (id), startDate, endDate, requested, employee name (name) or status. Specify order\nin the request by specifying an array with what you sort by as first element and direction ('asc' or 'desc') as\nsecond element - e.g.: &order[]=id&order[]=desc\n","required":false,"schema":{"type":"string","enum":["id","startDate","endDate","requested","name","status"]}},{"name":"filter_leave_type","in":"query","description":"Filters list by leave rule ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_status","in":"query","description":"Filters list by leave application status (approved, declined, pending)\n","required":false,"schema":{"type":"string"}},{"name":"filter_exclude_id","in":"query","description":"Filters list to exclude leave application ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_include_ids","in":"query","description":"Filters the list by leave application ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_include_deleted_approved_leaves","in":"query","description":"Returns deleted and approved leave applications data\n","required":false,"schema":{"type":"string"}},{"name":"filter_updated_since","in":"query","description":"Filters leave applications that have been created, edited, approved, declined or deleted since this date<br\/>\n`WARNING: By including this filter, the results will include deleted leave applications`\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/EmployeeLeaveTransformer"}},"included":{"type":"object","properties":{"leave-rule-{id}":{"type":"object","$ref":"#\/components\/schemas\/LeaveRuleTransformer"},"leave-application-file-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeLeaveApplicationFileTransformer"},"leave-application-hours-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeLeaveApplicationHoursTransformer"},"paycycle-{id}":{"type":"object","$ref":"#\/components\/schemas\/PaycycleStatusTransformer"},"leave-shift-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeLeaveApplicationShiftTransformer"},"reason-list-{id}":{"type":"object","$ref":"#\/components\/schemas\/ReasonListTransformer"},"logs-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeLeaveApplicationLogTransformer"},"note-creator-{id}":{"type":"object","$ref":"#\/components\/schemas\/UserTransformer"},"operation-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientLoginTransformer"},"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientV2Transformer"},"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"},"employee-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeePermissionsTransformer"},"admin-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/AdminTransformer"},"employee-email-sso-disabled-domain-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmailInDisabledDomainTransformer"},"employee-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeV2Transformer"},"tag-{id}":{"type":"object","$ref":"#\/components\/schemas\/TagTransformer"},"tag-group-{id}":{"type":"object","$ref":"#\/components\/schemas\/TagGroupTransformer"},"comment-{id}":{"type":"object","$ref":"#\/components\/schemas\/CommentTransformer"},"employee-app-settings-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeAppSettingsTransformer"},"employee-status-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeStatusTransformer"},"employee-client-exclusive-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeClientExclusiveTransformer"},"employee-employment-details-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmploymentDetailsTransformer"},"employee-go-1-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeGo1Transformer"},"employee-contact-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeContactTransformer"},"emergency-contact-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmergencyContactTransformer"},"onboarding-overview-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeOnboardingOverviewTransformer"},"employment-status-history-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeHistoricalStatusTransformer"},"office-code-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeOfficeCodeTransformer"},"current-associated-operation-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentAssociatedOperationTransformer"},"current-associated-location-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentAssociatedLocationTransformer"},"current-positions-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentPositionsTransformer"},"employee-state-suburb-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeStateSuburbTransformer"},"employee-employment-type-start-date-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmploymentTypeStartDateTransformer"},"employee-last-worked-date-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeLastWorkedTransformer"},"employee-registration-progress-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeRegistrationProgressTransformer"},"employee-go1-id-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeGo1IdTransformer"},"employee-go1-assigned-courses-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeGo1AssignedCoursesTransformer"},"employee-stp-compliance-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeStpComplianceTransformer"},"employee-cessation-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCessationTransformer"},"current-medical-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentMedicalTransformer"},"hr-details-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeHrV2Transformer"},"custom-fields-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCustomFieldsTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/roster-branches":{"get":{"tags":["Rosters"],"summary":"Get Roster Branches","operationId":"api_v2_roster-branches_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"client,location,shift-dynamic-comms-template-settings,note-creator,roster-comment,qualification,tag,rosterComment,rosterDayComment,shiftApprovedDynamicCommsTemplateSettings,shiftDeclinedDynamicCommsTemplateSettings,shiftCancelledDynamicCommsTemplateSettings,unapprovedShiftDynamicCommsTemplateSettings,qualifications,tags"}},{"name":"filter_status","in":"query","description":"Filter roster operation status; available values:\n- Approved\n- Archived\n- Declined\n- Unverified (a.k.a 'Pending' state)\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_code","in":"query","description":"Filter result to match records belonged to specific office codes. The parameter specified is a comma-separated office codes\n","required":false,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"Filter the results where specified string value should match branch id or title of roster branches\n","required":false,"schema":{"type":"string"}},{"name":"filter_roster_or_operation_name","in":"query","description":"Filter the results where specified string value should match branch id, title of roster branches or operation name\n","required":false,"schema":{"type":"string"}},{"name":"filter_client_id","in":"query","description":"Filter the result belonging to specific operations. The value supplied is a comma-separated string of operation IDs\n","required":false,"schema":{"type":"string"}},{"name":"filter_location_id","in":"query","description":"Filter the result belonging to specific locations. The value supplied is a comma-separated string of location IDs\n","required":false,"schema":{"type":"string"}},{"name":"filter_state_id","in":"query","description":"Filter the result belonging to specific states. The value supplied is a comma-separated string of state IDs\n","required":false,"schema":{"type":"string"}},{"name":"filter_roster_phone_number","in":"query","description":"Filter results to return only roster branches with specific contact number. Please not that only numeric string value can\nbe accepted.\n","required":false,"schema":{"type":"string"}},{"name":"filter_active_clients","in":"query","description":"Filter results to return only roster branches from active operations.\n","required":false,"schema":{"type":"string"}},{"name":"filter_roster_comment_by_date","in":"query","description":"Filter the results to only display roster branches with comments created on specific date\n","required":false,"schema":{"type":"string"}},{"name":"filter_tags","in":"query","description":"Filter results to show operations with specified tag IDs. The query string is a comma-separated tag IDs.\nUse in conjunction with filter_tags_in_options=and|or to further refine the list\n","required":false,"schema":{"type":"string"}},{"name":"filter_roster_ids","in":"query","description":"Filter results to show only roster branches with specific IDs. The required parameter is an array of roster branch IDs\n","required":false,"schema":{"type":"string"}},{"name":"filter_archive_only","in":"query","description":"Filter results to show only the archived roster branches\n","required":false,"schema":{"type":"string"}},{"name":"filter_has_approve_shifts_only","in":"query","description":"Filter results to show only the roster branches has approve-shifts in period\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order the results by 'id' or 'title' by 'asc' or 'desc'. Example 'title:asc'.\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 3000 per page.","required":false,"schema":{"type":"integer"}},{"name":"filter_updated_since","in":"query","description":"Filters the results to records updated since timestamp\n","required":false,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/RosterBranchV2Transformer"}},"included":{"type":"object","properties":{"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientTransformer"},"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"},"location-{id}":{"type":"object","$ref":"#\/components\/schemas\/LocationTransformer"},"shift-dynamic-comms-template-settings-{id}":{"type":"object","$ref":"#\/components\/schemas\/DynamicCommsTemplateSettingsTransformer"},"note-creator-{id}":{"type":"object","$ref":"#\/components\/schemas\/UserTransformer"},"operation-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientLoginTransformer"},"employee-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeePermissionsTransformer"},"admin-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/AdminTransformer"},"employee-email-sso-disabled-domain-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmailInDisabledDomainTransformer"},"roster-comment-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterCommentTransformer"},"qualification-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterBranchQualificationTransformer"},"qualificationExpiry-{id}":{"type":"object","$ref":"#\/components\/schemas\/CandidateQualificationExpiryTransformer"},"tag-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterBranchTagTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/deductions\/types":{"get":{"tags":["Deductions"],"summary":"Get deductions and salary sacrifice details","operationId":"api_v2_deductions_types_GET","parameters":[{"name":"filter","in":"query","description":"The primary search function for finding deduction items. Will filter via type, and name\n","required":false,"schema":{"type":"string"}},{"name":"filter_status","in":"query","description":"Returns deduction items that contains specific status:\n- Salary sacrifice\n- Deductions\n- Archived\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order by id, type, name, method, tax, separate account, and stp category\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/DeductionTransformer"}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/deductions":{"get":{"tags":["Deductions"],"summary":"Search for deductions assigned to employees","description":"\n\n","operationId":"api_v2_deductions_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"employee,deduction_type,history,payments"}},{"name":"filter","in":"query","description":"The primary search function for finding deductions will filter via employees, references & deduction types\n","required":false,"schema":{"type":"string"}},{"name":"filter_active","in":"query","description":"Find deductions that are still active\n","required":false,"schema":{"type":"boolean"}},{"name":"filter_ended","in":"query","description":"Find deductions that have either ended early or completed\n\nThis does not include deleted records\n","required":false,"schema":{"type":"boolean"}},{"name":"filter_active_deduction_after","in":"query","description":"Filter deductions that are active on or after this date.\n","required":false,"schema":{"type":"string"}},{"name":"filter_employee_ids","in":"query","description":"Filter records by employee ids\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_types","in":"query","description":"Filter records by deduction type.\nSee <a href=\"#tag\/Deductions\/operation\/api_v2_deductions_types_GET\">deduction types<\/a> to get the list.\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_office_codes","in":"query","description":"Filter records by the employee office code\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_operation_ids","in":"query","description":"Filter records by the associated operation against the employee\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_updated_since","in":"query","description":"Filter records based on when a last update event happened which can include create\/update of deduction against\nemployee or payout\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order by employee, deduction_name or start_date\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. <br\/><b>Please note: when requesting with `history` include, and page size is above 250, only the last 100 history entries will be included per deduction.<\/b><br\/> Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/DeductionV2Transformer"}},"included":{"type":"object","properties":{"employee-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeV2LookupTransformer"},"deduction_type-{id}":{"type":"object","$ref":"#\/components\/schemas\/DeductionTransformer"},"history-{id}":{"type":"object","$ref":"#\/components\/schemas\/DeductionHistoryTransformer"},"payments-{id}":{"type":"object","$ref":"#\/components\/schemas\/DeductionPaymentsTransformer"}}}}}}}}},"x-hideTryItPanel":true},"put":{"tags":["Deductions"],"summary":"Create a new deduction record for employees","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"employee_ids":{"description":"Employee IDs","type":"array_of_integers","example":[18,20]},"pay_separate_account":{"type":"boolean","description":"Should this deduction go to separate employer's bank account?","enum":[1,0]},"account_name":{"type":"string","description":"Bank account name (required if 'pay_separate_account' is true.)","example":"John Doe"},"account_number":{"type":"string","description":"Bank account number (required if 'pay_separate_account' is true.)","example":"123456780"},"bsb":{"type":"string","description":"Bank BSB number (required if 'pay_separate_account' is true.)","example":"001-001"},"deduction_type":{"type":"integer","description":"Deduction type, see <a href=\"#tag\/Deductions\/operation\/api_v2_deductions_types_GET\">deduction types<\/a> to get the list"},"deduction_method":{"type":"string","description":"Possible values for deduction method","enum":["recurring","instalments","one-off"]},"recurring":{"type":"boolean","description":"Is this deduction recurring?","enum":[1,0]},"recurring_from":{"type":"string","description":"Deduction starting date (required if 'on_next_pay' is false.)","example":"2026-06-01"},"recurring_till":{"type":"string","description":"Deduction end date (if recurring)","example":"2026-06-01"},"amount":{"type":"number","description":"Deduction amount","example":"100.50"},"per_cycle":{"type":"number","description":"Per cycle deduction amount","example":"10.50"},"threshold_amount":{"type":"number","description":"Deduction will not be made if it will lower net pay below threshold amount","example":"100.50"},"reference":{"type":"string","description":"Reference to deduction, included with deduction name on payslips and invoices","example":"Monthly Deduction"},"external_reference":{"type":"string","description":"Used to assist on reporting to external systems","example":"Monthly Deduction"},"comments":{"type":"string","description":"Comments on deduction","example":"Monthly Deduction for John Doe, recurring first week each month"},"on_next_pay":{"type":"boolean","description":"Attempt to apply deduction on next payslip until it's successful","enum":[1,0]},"is_protected_earnings":{"type":"boolean","description":"Is this deduction protected earnings? (Protected earnings means there is a minimum net pay amount to remain after deductions are applied)","enum":[1,0]},"protected_threshold":{"type":"numeric","description":"Minimum amount of net pay amount to remain after deductions are applied, if 'is_protected_earnings' is true.","example":"100.50"},"protect_only_this_deduction":{"type":"boolean","description":"Protect only this deduction?","enum":[1,0]}}}}},"required":true},"operationId":"api_v2_deductions_PUT","responses":{"403":{"description":"Not authorised"},"201":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":[]}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/deductions\/{id}":{"patch":{"tags":["Deductions"],"summary":"Updates a deduction record","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"account_name":{"type":"string","description":"Bank account name (required if 'pay_separate_account' is true.)","example":"John Doe"},"account_number":{"type":"string","description":"Bank account number (required if 'pay_separate_account' is true.)","example":"123456789"},"bsb":{"type":"string","description":"Bank BSB number (required if 'pay_separate_account' is true.)","example":"001-001"},"recurring_till":{"type":"string","description":"Deduction end date (if recurring)","example":"2026-06-01"},"threshold_amount":{"type":"number","description":"Deduction will not be made if it will lower net pay below threshold amount","example":100.5},"reference":{"type":"string","description":"Reference to deduction, included with deduction name on payslips and invoices","example":"Monthly Deduction"},"external_reference":{"type":"string","description":"Used to assist on reporting to external systems","example":"Monthly Deduction"},"comments":{"type":"string","description":"Comments on deduction","example":"Monthly Deduction for John Doe, recurring first week each month"},"protected_threshold":{"type":"number","description":"Minimum amount of net pay amount to remain after deductions are applied, if 'is_protected_earnings' is true.","example":100.5}}}}},"required":true},"operationId":"api_v2_deductions_{id}_PATCH","parameters":[{"name":"id","in":"path","description":"Deduction Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"204":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":[]}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/deductions\/{id}\/end":{"patch":{"tags":["Deductions"],"summary":"Mark the deduction as ended","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"reason":{"type":"string","description":"Optional. Reason to end this deduction.","example":"Transferred remaining amount in full."}}}}},"required":true},"operationId":"api_v2_deductions_{id}_end_PATCH","responses":{"403":{"description":"Not authorised"},"204":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":[]}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts":{"get":{"tags":["Approved Shifts"],"summary":"Returns the approved shifts","deprecated":true,"requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"filterIds":{"type":"array","description":"Get specific shifts (you still need the start and end filters for now)","example":[123,456,789],"items":{"type":"integer"}},"filterStartDate":{"type":"string","description":"Set the filter start date for the request","example":"2026-06-01"},"filterEndDate":{"type":"string","description":"Set the filter end date for the request","example":"2026-06-01"},"filterDates":{"type":"array","description":"Filter by specific dates (Y-m-d)","example":["2025-09-08","2025-09-09"],"items":{"type":"string"}},"filterOperation":{"type":"array","description":"Filter the results by operation Id(s)","example":[120,121],"items":{"type":"integer"}},"filterRoster":{"type":"array","description":"Filter the results by roster branch Id(s)","example":[278,279],"items":{"type":"integer"}},"filterEmployee":{"type":"array","description":"Filter the results by employee Id(s)","example":[10034,10035],"items":{"type":"integer"}},"filterShiftCreation":{"type":"string","description":"Filter the results by creator of shifts","enum":["all","admin","employee"]},"filterShiftType":{"type":"array","description":"Filter the results by shift type","example":["approved"],"items":{"type":"string","enum":["all","unapproved","approved","declined","unrostered"]}},"filterOfficeCode":{"type":"array","description":"Filter the results by office code Id(s)","example":[1,2,3],"items":{"type":"integer"}},"filterAllowancesOnly":{"type":"boolean","description":"Filter the results to only include shifts with allowances","example":1},"filterShiftWithQuestionnaireComment":{"type":"boolean","description":"Filter the results to only include shifts with questionnaire comments","example":1},"filterUpdatedSince":{"type":"string","description":"Filter the results to records updated since timestamp","example":"2026-06-01 03:32:51"},"include":{"type":"string","description":"Include data relationships","enum":["tags","tag-groups"]}}}}},"required":true},"operationId":"api_v2_approve-shifts_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Primary record ID","example":1234},"shift_id":{"type":"string","description":"Approved shift ID","example":"15396"},"clock_log_id":{"type":"string","description":"Clock log record ID that corresponds with this approved shift","example":"17"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"is_unrostered_shift":{"type":"boolean","description":"Is this an unrostered shift?","enum":[true,false]},"shift_status":{"type":"integer","description":"Shift status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Unfilled<\/td><\/tr><tr><td>1<\/td><td>Ready<\/td><\/tr><tr><td>2<\/td><td>Complete<\/td><\/tr><tr><td>3<\/td><td>Active<\/td><\/tr><tr><td>4<\/td><td>Empty<\/td><\/tr><\/table>","enum":[0,1,2,3,4]},"employee_type":{"type":"string","description":"Employment type as recorded in the system\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>casual<\/td><td>Casual<\/td><\/tr><tr><td>full<\/td><td>Full-time<\/td><\/tr><tr><td>part<\/td><td>Part-time<\/td><\/tr><\/table>","enum":["casual","full","part"]},"employee_shift_status":{"type":"integer","description":"Employee offer status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Offer to send<\/td><\/tr><tr><td>1<\/td><td>Offer sent to employee<\/td><\/tr><tr><td>2<\/td><td>Offer accepted<\/td><\/tr><tr><td>3<\/td><td>Offer declined<\/td><\/tr><tr><td>4<\/td><td>Offer cancelled<\/td><\/tr><tr><td>5<\/td><td>Offer reassigned<\/td><\/tr><tr><td>6<\/td><td>Shift submitted by employee<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6]},"verification":{"type":"integer","description":"Employee shift verification status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Not yet verified<\/td><\/tr><tr><td>1<\/td><td>Approved<\/td><\/tr><tr><td>2<\/td><td>Rejected<\/td><\/tr><tr><td>3<\/td><td>Pre-approved<\/td><\/tr><tr><td>4<\/td><td>On leave<\/td><\/tr><tr><td>5<\/td><td>Automatically approved<\/td><\/tr><tr><td>6<\/td><td>Submitted by employee<\/td><\/tr><tr><td>7<\/td><td>Locked shift<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6,7]},"client_id":{"type":"string","description":"Operation ID related to this shift","example":"71"},"client_name":{"type":"string","description":"Operation name","example":"Paper Route A"},"client_status":{"type":"string","description":"Operation status","enum":["Available","Unavailable","Pending","Prospective","Declined","Archived","Approved"]},"client_declined":{"type":"integer","description":"Operation declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Declined<\/td><\/tr><tr><td>0<\/td><td>Not declined<\/td><\/tr><\/table>","enum":[0,1]},"client_office_code":{"type":"string","description":"Operation office code id","example":"4"},"client_manager":{"type":"string","description":"Operation manager id","example":"17"},"client_suburb":{"type":"string","description":"Operation location (suburb)","example":"Knoxfield"},"position_group_search":{"type":"string","description":"Is position group enabled? \n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>True<\/td><\/tr><tr><td>0<\/td><td>False<\/td><\/tr><\/table>","enum":["1","0"]},"statement_cycle":{"type":"string","description":"Operation statement cycle\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Weekly<\/td><\/tr><tr><td>2<\/td><td>Fortnightly<\/td><\/tr><tr><td>20<\/td><td>Advance\/arrears<\/td><\/tr><\/table>","enum":["1","2","20"]},"employee_id":{"type":"string","description":"Employee Id","example":"77"},"external_id":{"type":"string","description":"External ID for the employee. Usually set to previous system's ID","example":"X00510"},"employee_name":{"type":"string","description":"Employee name","example":"Joseph Sample"},"roster_branch_id":{"type":"integer","description":"Roster branch id","example":10},"roster_branch_name":{"type":"string","description":"Roster branch name","example":"Packing Shift Morning"},"roster_branch_state":{"type":"string","description":"Roster branch state; for possible values, look at the '\/api\/v1\/state' route","example":"QLD"},"roster_branch_location":{"type":"string","description":"Roster branch location label; for possible values, look at '\/api\/v1\/location' route","example":"Sydney North"},"scheduled_time":{"type":"object","properties":{"scheduled_start":{"type":"string","description":"Scheduled start time of the shift","example":"2020-08-26 07:00:00"},"scheduled_end":{"type":"string","description":"Scheduled end time of the shift","example":"2020-08-26 15:06:00"},"scheduled_break_length":{"type":"string","description":"Scheduled break length of the shift","example":"00:30"}}},"location":{"type":"object","properties":{"in_latitude":{"type":"string","description":"Clock in latitude","example":"-37.84159622"},"out_longitude":{"type":"string","description":"Clock out longitude","example":"145.24734412"},"out_latitude":{"type":"string","description":"Clock out latitude","example":"-37.84154535"},"in_longitude":{"type":"string","description":"Clock in longitude","example":"145.24734412"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]}}},"recorded_time":{"type":"object","properties":{"recorded_start":{"type":"string","description":"Recorded start time of the shift","example":"2020-08-26 15:21:42"},"recorded_end":{"type":"string","description":"Recorded end time of the shift","example":"2020-08-26 23:36:54"},"recorded_break_length":{"type":"string","description":"Recorded break length of the shift","example":"00:28"}}},"estimated_time":{"type":"object","properties":{"estimated_start":{"type":"string","description":"Estimated start time of the shift","example":"2020-08-26 07:00:00"},"estimated_end":{"type":"string","description":"Estimated end time of the shift","example":"2020-08-26 15:06:00"},"estimated_break_length":{"type":"string","description":"Estimated break length of the shift","example":"00:30"},"estimated_breaks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Estimated break record ID","example":12305},"shift_id":{"type":"integer","description":"Estimated shift ID","example":100},"start":{"type":"string","description":"Start time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"end":{"type":"string","description":"End time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"length":{"type":"string","description":"Length of break (hour format)","example":"00:30"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]},"break_is_taken":{"type":"boolean","description":"Whether the break is taken or not","enum":[true,false]}}}},"estimated_duration":{"type":"number","description":"Estimated shift duration (in decimal hours)","example":6.57}}},"approved_time":{"type":"object","properties":{"approved_start":{"type":"string","description":"Approved start time of the shift","example":"2026-06-01 03:32:51"},"approved_end":{"type":"string","description":"Approved end time of the shift","example":"2026-06-01 03:32:51"},"approved_break_length":{"type":"string","description":"Approved break length of the shift (in decimal time)","example":"00.30"},"approved_breaks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Approved break record ID","example":12305},"shift_id":{"type":"integer","description":"Approved shift ID","example":100},"start":{"type":"string","description":"Start time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"end":{"type":"string","description":"End time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"length":{"type":"string","description":"Length of break (decimal format)","example":"0.5"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]}}}},"approved_duration":{"type":"number","description":"Approved shift duration (in decimal hours)","example":5.87}}},"position":{"type":"object","properties":{"position_id":{"type":"string","description":"Position id for the shift","example":"439"},"title":{"type":"string","description":"Position title for the shift","example":"Process Worker Level 1 (Casual)"},"custom_position_title":{"type":"string","description":"Optional position title for the shift (if applicable)","example":"Level 1 Helper"}}},"position_group":{"type":"object","properties":{"position_group_id":{"type":"string","description":"Employee position group id for shift","example":"1"},"title":{"type":"string","description":"Employee position group title for shift","example":"Position Group 1"}}},"is_clock_log_deleted":{"type":"string","description":"Display the date and time when clock log record is deleted (if applicable)","example":"2026-06-01 03:32:51"},"clock_comment_start":{"type":"string","description":"Clock log comment upon starting","example":"Starting 5 minutes early"},"clock_comment_end":{"type":"string","description":"Clock log comment upon finishing","example":"Finishing 5 minutes early"},"clock_start_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"clock_end_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"leave_rule_id":{"type":"string","description":"Deprecated","example":""},"absent_comments":{"type":"string","description":"Deprecated","example":""},"document":{"type":"boolean","description":"Has this employee submitted document(s) for this shift?","enum":[true,false]},"did_not_work":{"type":"boolean","description":"If this employee did not work on this shift, this would be true","enum":[true,false]},"reason":{"type":"object","properties":{"reason_id":{"type":"string","description":"Id of absence reason from the list (if applicable); see '\/api\/v1\/reason-list' route","example":"2"},"reason":{"type":"string","description":"Reason of absence (if applicable); see '\/api\/v1\/reason-list' route","example":"Approved Leave"}}},"roster_shift_comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment left for this roster shift","example":"Please be available at 6:35 AM"},"type":{"type":"string","description":"Roster shift comment types","enum":["general","candidate_submitted"]},"user_id":{"type":"string","description":"User Id of the creator of the comment","example":"1115"},"roster_job_shift_candidate_id":{"type":"string","description":"Id of roster shift and employee in database","example":"3059"},"visible_to_employee":{"type":"integer","description":"Determine whether this comment is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[0,1]}}}},"timesheet_file":{"type":"string","description":"Path to submitted timesheet file","example":"\/secure\/documents\/timesheets-additional\/247"},"last_modified":{"type":"object","properties":{"user":{"type":"string","description":"Admin user name","example":"James Sampler"},"type":{"type":"string","description":"Event type","enum":["Approved","Auto-approved","Bulk adjusted end time","Created","Create unrostered","Declined","Edited","Leave","Pre-approved"]},"timestamp":{"type":"string","description":"Date and time when this record was last edited","example":"2026-06-01 03:32:51"}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"title":{"type":"string","description":"Allowance title","example":"Forklift Allowance"},"type":{"type":"string","description":"Allowance type","enum":["hourly","daily","hour (value by candidate)","km (value by candidate)","weekly","shift"]},"rates":{"type":"object","properties":{"label":{"type":"string","description":"Rate label","example":"Forklift Allowance"},"rate":{"type":"string","description":"Rate of the allowance","example":"0.550000"}}},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5},"award_title":{"type":"string","description":"The award title under which this allowance is based","example":"General Retail Industry Award"},"candidate_submitted":{"type":"string","description":"Is this submitted by employee?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}},"errors":{"type":"array","items":{"type":"object","properties":{"roster_shift_candidate_id":{"type":"string","description":"The id of the shift","example":"350"},"severity":{"type":"string","description":"Severity of the error","enum":["error","warning"]},"type":{"type":"string","description":"Error types","enum":["fatigue","upcoming_fatigue","employee-not-available","employee-not-available-time-based","shift-conflict","job-conflict","position-mis-match","position-not-set","candidate-archived","employee-not-set","leave-conflict","duration-exceeds-limit","zero-duration","negative-duration","timesheet-paid","maximum-weekly-hours-exceeded","shift-already-offered","maximum-weekly-ordinary-hours-exceeded"]},"label":{"type":"string","description":"Friendly description of the error types","example":"Employee is unavailable."},"created_at":{"type":"string","description":"Date and time when record is created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when record was last updated","example":"2026-06-01 03:32:51"},"available_time":{"type":"string","description":"Time when employee should be available","example":"[{\"date\":\"2020-08-31\",\"start\":\"2020-08-31 15:00\",\"end\":\"2020-08-31 23:00\"}]"}}}},"timesheet_status":{"type":"string","description":"Status of timesheet related to this shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Submitted\/Pending<\/td><\/tr><tr><td>1<\/td><td>Accepted<\/td><\/tr><tr><td>2<\/td><td>Invoiced<\/td><\/tr><tr><td>3<\/td><td>Declined<\/td><\/tr><tr><td>4<\/td><td>Paid<\/td><\/tr><\/table>","enum":["0","1","2","3","4"]},"available_id":{"type":"string","description":"Available timesheet id","example":"13916"},"is_holiday":{"type":"string","description":"Is shift on a public holiday?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>null<\/td><td>No Holiday<\/td><\/tr><tr><td>0<\/td><td>Treat as normal day, standard rules will apply<\/td><\/tr><tr><td>1<\/td><td>Set as public holiday, shift paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>Pay base (OTE) rate, no overtime or shift loading applies<\/td><\/tr><\/table>","enum":[null,0,1,2]},"employee_declined_status":{"type":"string","description":"Is employee declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>True<\/td><\/tr><tr><td>0<\/td><td>False<\/td><\/tr><\/table>","enum":["1","0"]},"approver_name":{"type":"string","description":"Approver\\'s name","example":"The Admin"},"approver_email":{"type":"string","description":"Approver\\'s email address (if shift was approved)","example":"admin@admin.com"},"supervisor_name":{"type":"string","description":"Supervisor name","example":"Doug Smith"},"supervisor_comment":{"type":"string","description":"Supervisor comment","example":null},"supervisor_unavailable_comment":{"type":"string","description":"Supervisor unavailable comment","example":null},"supervisor_unavailable":{"type":"string","description":"Supervisor unavailable status","example":null},"employee_first_name":{"type":"string","description":"Employee first name","example":"John"},"employee_surname":{"type":"string","description":"Employee surname","example":"Smith"},"employee_phone_number":{"type":"string","description":"Employee phone number","example":"0411111111"},"old_position":{"type":"object","properties":{"id":{"type":"integer","description":"Old position id","example":null},"title":{"type":"string","description":"Old position title","example":null}}},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Comment ID","example":123},"action":{"type":"string","description":"Action performed","example":"Break Taken"},"type":{"type":"string","description":"Type of comment","example":"attendance"},"reason":{"type":"string","description":"Reason for the comment","example":"Late break"},"roster_job_shift_break_id":{"type":"integer","description":"Roster job shift break ID","example":null}}}},"clock_log_questionnaire":{"type":"array","items":{"type":"object","properties":{"question_title":{"type":"string","description":"Title of the question","example":"Did you take a break?"},"answer":{"type":"string","description":"Answer to the question","example":"Yes"},"comment":{"type":"string","description":"Additional comment","example":"Break taken at 12:30"},"type":{"type":"string","description":"Type of question","example":"boolean"}}}},"clock_log_source":{"type":"string","description":"Clock log source","example":null},"attendance":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Attendance record ID","example":47425},"can_id":{"type":"integer","description":"Candidate ID","example":74},"employee_shift_id":{"type":"integer","description":"Employee shift ID","example":1837651},"job_id":{"type":"integer","description":"Job ID","example":null},"c_id":{"type":"integer","description":"Client ID","example":1},"leave_rule_id":{"type":"integer","description":"Leave rule ID","example":5556},"leave_rule":{"type":"object","properties":{"leave_rule_id":{"type":"integer","description":"Leave rule ID","example":5556},"leave_title":{"type":"string","description":"Leave title","example":"Annual Leave"},"withhold_tax":{"type":"integer","description":"Withhold tax flag","example":0},"payment_summmary":{"type":"integer","description":"Payment summary flag","example":0},"super":{"type":"integer","description":"Superannuation flag","example":0}}},"reason_id":{"type":"integer","description":"Reason ID","example":2},"reason":{"type":"object","properties":{"id":{"type":"integer","description":"Reason ID","example":2},"title":{"type":"string","description":"Reason title","example":"Sick"},"created_at":{"type":"string","description":"Created at timestamp","example":"2018-08-23 11:37:51"},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2018-08-23 11:38:13"},"type":{"type":"integer","description":"Reason type","example":1}}},"absent_comment":{"type":"string","description":"Absent comment","example":""},"ato_reason":{"type":"string","description":"ATO reason","example":null},"attendance_date":{"type":"string","description":"Attendance date","example":"2025-09-22"},"authority_id":{"type":"integer","description":"Authority ID","example":1},"candidate_submitted":{"type":"integer","description":"Candidate submitted flag","example":0},"clock_id":{"type":"integer","description":"Clock ID","example":null},"created_at":{"type":"string","description":"Created at timestamp","example":"2025-09-22 11:25:53"},"deleted_at":{"type":"string","description":"Deleted at timestamp","example":null},"is_pending_termination":{"type":"integer","description":"Is pending termination flag","example":0},"is_termination":{"type":"integer","description":"Is termination flag","example":0},"leave_pay_nopay":{"type":"string","description":"Leave pay\/no pay","example":""},"leave_rule_amount":{"type":"string","description":"Leave rule amount","example":"0.0000"},"leave_rule_processed_by_approve_shift":{"type":"integer","description":"Leave rule processed by approve shift flag","example":0},"payg_gen_type":{"type":"integer","description":"PAYG generation type","example":null},"scheduled_termination_date":{"type":"string","description":"Scheduled termination date","example":null},"subclass_id":{"type":"integer","description":"Subclass ID","example":69},"termination_data":{"type":"string","description":"Termination data","example":null},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2025-09-22 11:25:53"}}}},"costing":{"type":"array","items":{"type":"object"}},"shift_costing":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Shift costing record ID","example":175},"invoicing_po_id":{"type":"integer","description":"Invoicing PO ID","example":null},"shift_candidate_id":{"type":"integer","description":"Shift candidate ID","example":1837651},"user_id":{"type":"integer","description":"User ID","example":1},"custom_po_label":{"type":"string","description":"Custom PO label","example":"Coaching"},"is_override":{"type":"integer","description":"Is override flag","example":1},"start":{"type":"string","description":"Costing start time","example":"2025-09-22 12:00:00"},"end":{"type":"string","description":"Costing end time","example":"2025-09-22 14:00:00"},"created_at":{"type":"string","description":"Created at timestamp","example":"2025-09-22 11:05:27"},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2025-09-22 11:05:27"},"deleted_at":{"type":"string","description":"Deleted at timestamp","example":"2025-09-22 11:05:27"}}}},"leave_application_ids":{"type":"array","items":{"type":"integer"}},"leave_application_hours":{"type":"array","items":{"type":"number"}},"shiftLeave":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Leave application ID","example":101},"shift_candidate_id":{"type":"integer","description":"Shift candidate ID","example":1837651},"leave_type":{"type":"string","description":"Type of leave","example":"Annual Leave"},"hours":{"type":"number","description":"Number of leave hours","example":8},"start":{"type":"string","description":"Leave start time","example":"2025-09-22 12:00:00"},"end":{"type":"string","description":"Leave end time","example":"2025-09-22 14:00:00"},"status":{"type":"string","description":"Leave application status","example":"Approved"},"created_at":{"type":"string","description":"Created at timestamp","example":"2025-09-22 11:05:27"},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2025-09-22 11:05:27"},"deleted_at":{"type":"string","description":"Deleted at timestamp","example":"2025-09-22 11:05:27"}}}},"sum_leave_application_hours":{"type":"number","description":"Sum of leave application hours","example":0},"approve_shift_log":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Approve shift log id","example":1234},"action":{"type":"string","description":"Action type","example":"Auto-approved"},"roster_job_shift_candidate_id":{"type":"integer","description":"Roster job shift candidate id","example":1234},"clock_id":{"type":"integer","description":"Clock log id","example":1234},"user_id":{"type":"integer","description":"User id","example":1234},"employee_id":{"type":"integer","description":"Employee id","example":1234},"position_id":{"type":"integer","description":"Position id","example":null},"position_group_id":{"type":"integer","description":"Position group id","example":6},"branch_id":{"type":"integer","description":"Branch id","example":1},"status":{"type":"integer","description":"Status","example":5},"start":{"type":"string","description":"Start time","example":"2025-09-08 09:30:00"},"end":{"type":"string","description":"End time","example":"2025-09-08 13:00:00"},"break_length":{"type":"number","format":"float","example":0.5,"description":"Break duration"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]},"created_at":{"type":"string","description":"Created at","example":"2025-09-08 13:07:19"},"updated_at":{"type":"string","description":"Updated at","example":"2025-09-08 13:07:20"},"work_app_user_id":{"type":"integer","description":"Work app user id","example":null},"is_processed":{"type":"integer","description":"Is processed","example":1},"is_holiday":{"type":"string","description":"Is holiday","example":null},"available_id":{"type":"integer","description":"Available id","example":1234},"user":{"type":"object","properties":{"id":{"type":"integer","description":"User id","example":1234},"name":{"type":"string","description":"User name","example":"John Smith"},"email":{"type":"string","description":"User email","example":"john.smith@example.com"},"created_at":{"type":"string","description":"Created at","example":"2025-06-25 14:37:37"},"updated_at":{"type":"string","description":"Updated at","example":"2025-09-16 09:30:03"},"integration_id":{"type":"string","description":"Integration id","example":null},"deleted_at":{"type":"string","description":"Deleted at","example":null}}}}}},"created_at":{"type":"string","description":"Created at","example":"2025-07-29 12:09:16"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/bulk-create\/status\/{key}":{"get":{"tags":["Approved Shifts"],"summary":"Get status on bulk approve shift change","operationId":"api_v2_approve-shifts_bulk-create_status_{key}_GET","parameters":[{"name":"key","in":"path","description":"Bulk API job key","required":true,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"id":{"type":"number","format":"int32","description":"The identifier of the record."},"key":{"type":"string","description":"A unique string reference to this record.","example":"bulk_approve_shifts_aa193807e1b0a49ff929ae29fe17b52a"},"status":{"type":"enum","description":"The current status of the job.","enum":["pending","processing","finished","failed"],"example":"processing"},"created_at":{"type":"string","format":"datetime","example":"2021-09-16 11:38:08"},"updated_at":{"type":"string","format":"datetime","example":"2021-09-16 11:38:08"},"result":{"type":"object","properties":{"errors":{"type":"array","description":"Any array of failed records. You can use this to reprocess your data.","items":{"type":"object","properties":{"message":{"type":"string","description":"A reason as to why it failed.","example":"Employee not found"},"record":{"type":"object","description":"An approved shift request object. Please refer to approve shift endpoint"}}}},"data":{"type":"array","description":"An array of records that has been processed successfully.","items":{"type":"object","description":"An approved shift request object. Please refer to approve shift endpoint."}}}}}}}}},"404":{"description":"Bulk shifts not found"}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/create-shift-validation":{"post":{"tags":["Approved Shifts"],"summary":"Creates a shift validation","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"branch_id":{"type":"string","description":"Roster branch Id","example":"54"},"employee_id":{"type":"string","description":"Employee Id","example":"1065"},"employee_ids":{"type":"array","description":"Employee Ids for offer validation","items":{"type":"integer"},"example":[1065,2048]},"shift_start":{"type":"string","description":"Date and time when shift starts","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"Date and time when shift ends","example":"2026-06-01 03:32:51"},"breaks":{"type":"array","items":{"type":"object","properties":{"start":{"type":"string","description":"Date and time of break start","example":"2026-06-01 03:32:51"},"break_length":{"type":"numeric","description":"The length of the break in hours and minutes","example":"0.5"},"break_is_payable":{"type":"boolean","description":"Flag to indicate if break is payable","enum":[0,1]}}}},"position_id":{"type":"string","description":"Position Id for this shift","example":"439"},"position_group_id":{"type":"string","description":"Employee position group id for this shift (if applicable)","example":"1"},"shift_id":{"type":"string","description":"Shift Id to be validated","example":"38238"},"include_blocked":{"type":"boolean","description":"Whether to include blocked employees in validation","example":false},"apply_position_exclusions":{"type":"boolean","description":"Whether to apply position exclusions","example":true}}}}},"required":true},"operationId":"api_v2_approve-shifts_create-shift-validation_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","description":"Error type","enum":["fatigue","upcoming_fatigue","employee-not-available","employee-not-available-time-based","shift-conflict","job-conflict","position-mis-match","position-not-set","candidate-archived","employee-not-set","leave-conflict","duration-exceeds-limit","zero-duration","negative-duration","timesheet-paid","maximum-weekly-hours-exceeded","shift-already-offered","maximum-weekly-ordinary-hours-exceeded","roster-requirements-not-met"]},"severity":{"type":"string","description":"Error severity","enum":["error","warning"]},"label":{"type":"string","description":"Error label","example":"Shift duration can not be negative"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/approve":{"post":{"tags":["Approved Shifts"],"summary":"Approve a shift","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"approve":{"type":"array","items":{"type":"object","properties":{"shift_id":{"type":"string","description":"Roster shift employee Id","example":"38375"},"approved_start":{"type":"string","description":"Approved start time of this shift","example":"2026-06-01 03:32:51"},"approved_end":{"type":"string","description":"Approved end time of this shift","example":"2026-06-01 03:32:51"},"approved_break_length":{"type":"string","description":"Approved break length of this shift","example":"00:30"},"is_pre_approved":{"type":"boolean","description":"Is this shift pre-approved?","enum":[true,false]}}}}}}}},"required":true},"operationId":"api_v2_approve-shifts_approve_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"array","items":{"type":"object","properties":{"shift_id":{"type":"string","description":"Approved shift ID","example":"15396"},"clock_log_id":{"type":"string","description":"Clock log record ID that corresponds with this approved shift","example":"17"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"is_unrostered_shift":{"type":"boolean","description":"Is this an unrostered shift?","enum":[true,false]},"shift_status":{"type":"integer","description":"Shift status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>unfilled<\/td><\/tr><tr><td>1<\/td><td>ready<\/td><\/tr><tr><td>2<\/td><td>complete<\/td><\/tr><tr><td>3<\/td><td>active<\/td><\/tr><tr><td>4<\/td><td>empty<\/td><\/tr><\/table>","enum":[0,1,2,3,4]},"employee_type":{"type":"string","description":"Employment type as recorded in the system\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>casual<\/td><td>casual<\/td><\/tr><tr><td>full<\/td><td>full time<\/td><\/tr><tr><td>part<\/td><td>part-time<\/td><\/tr><\/table>","enum":["casual","full","part"]},"employee_shift_status":{"type":"integer","description":"Employee offer status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>offer to send<\/td><\/tr><tr><td>1<\/td><td>offer sent to employee<\/td><\/tr><tr><td>2<\/td><td>offer accepted<\/td><\/tr><tr><td>3<\/td><td>offer declined<\/td><\/tr><tr><td>4<\/td><td>offer cancelled<\/td><\/tr><tr><td>5<\/td><td>offer reassigned<\/td><\/tr><tr><td>6<\/td><td>shift submitted by employee<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6]},"verification":{"type":"integer","description":"Employee shift verification status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>not verified<\/td><\/tr><tr><td>1<\/td><td>approved<\/td><\/tr><tr><td>2<\/td><td>rejected<\/td><\/tr><tr><td>3<\/td><td>pre-approved<\/td><\/tr><tr><td>4<\/td><td>on-leave<\/td><\/tr><tr><td>5<\/td><td>automatically approved<\/td><\/tr><tr><td>6<\/td><td>submitted by employee<\/td><\/tr><tr><td>7<\/td><td>locked shift<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6,7]},"client_id":{"type":"string","description":"Operation ID related to this shift","example":"71"},"client_name":{"type":"string","description":"Operation name","example":"Paper Route A"},"client_status":{"type":"string","description":"Operation status","enum":["Available","Unavailable","Pending","Prospective","Declined","Archived","Approved"]},"client_declined":{"type":"integer","description":"Operation declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>declined<\/td><\/tr><tr><td>0<\/td><td>not declined<\/td><\/tr><\/table>","enum":[0,1]},"client_office_code":{"type":"string","description":"Operation office code id","example":"4"},"client_manager":{"type":"string","description":"Operation manager id","example":"17"},"client_suburb":{"type":"string","description":"Operation location (suburb)","example":"Knoxfield"},"position_group_search":{"type":"string","description":"Is position group enabled?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"statement_cycle":{"type":"string","description":"Operation statement cycle\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>weekly<\/td><\/tr><tr><td>2<\/td><td>fortnightly<\/td><\/tr><tr><td>20<\/td><td>advance\/arrears<\/td><\/tr><\/table>","enum":["1","2","20"]},"employee_id":{"type":"string","description":"Employee Id","example":"77"},"external_id":{"type":"string","description":"External ID for the employee. Usually set to previous system's ID","example":"X00510"},"employee_name":{"type":"string","description":"Employee name","example":"Joseph Sample"},"roster_branch_id":{"type":"integer","description":"Roster branch id","example":10},"roster_branch_name":{"type":"string","description":"Roster branch name","example":"Packing Shift Morning"},"roster_branch_state":{"type":"string","description":"Roster branch state; for possible values, look at the '\/api\/v1\/state' route","example":"QLD"},"roster_branch_location":{"type":"string","description":"Roster branch location label; for possible values, look at '\/api\/v1\/location' route","example":"Sydney North"},"scheduled_time":{"type":"object","properties":{"scheduled_start":{"type":"string","description":"Scheduled start time of the shift","example":"2020-08-26 07:00:00"},"scheduled_end":{"type":"string","description":"Scheduled end time of the shift","example":"2020-08-26 15:06:00"},"scheduled_break_length":{"type":"string","description":"Scheduled break length of the shift","example":"00:30"}}},"location":{"type":"object","properties":{"in_latitude":{"type":"string","description":"Clock in latitude","example":"-37.84159622"},"out_longitude":{"type":"string","description":"Clock out longitude","example":"145.24734412"},"out_latitude":{"type":"string","description":"Clock out latitude","example":"-37.84154535"},"in_longitude":{"type":"string","description":"Clock in longitude","example":"145.24734412"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]}}},"recorded_time":{"type":"object","properties":{"recorded_start":{"type":"string","description":"Recorded start time of the shift","example":"2020-08-26 15:21:42"},"recorded_end":{"type":"string","description":"Recorded end time of the shift","example":"2020-08-26 23:36:54"},"recorded_break_length":{"type":"string","description":"Recorded break length of the shift","example":"00:28"}}},"estimated_time":{"type":"object","properties":{"estimated_start":{"type":"string","description":"Estimated start time of the shift","example":"2020-08-26 07:00:00"},"estimated_end":{"type":"string","description":"Estimated end time of the shift","example":"2020-08-26 15:06:00"},"estimated_break_length":{"type":"string","description":"Estimated break length of the shift","example":"00:30"}}},"position":{"type":"object","properties":{"position_id":{"type":"string","description":"Position id for the shift","example":"439"},"title":{"type":"string","description":"Position title for the shift","example":"Process Worker Level 1 (Casual)"},"custom_position_title":{"type":"string","description":"Optional position title for the shift (if applicable)","example":"Level 1 Helper"}}},"position_group":{"type":"object","properties":{"position_group_id":{"type":"string","description":"Employee position group id for shift","example":"1"},"title":{"type":"string","description":"Employee position group title for shift","example":"Position Group 1"}}},"is_clock_log_deleted":{"type":"string","description":"Display the date and time when clock log record is deleted (if applicable)","example":"2026-06-01 03:32:51"},"clock_comment_start":{"type":"string","description":"Clock log comment upon starting","example":"Starting 5 minutes early"},"clock_comment_end":{"type":"string","description":"Clock log comment upon finishing","example":"Finishing 5 minutes early"},"clock_start_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"clock_end_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"leave_rule_id":{"type":"string","description":"Deprecated","example":""},"absent_comments":{"type":"string","description":"Deprecated","example":""},"document":{"type":"boolean","description":"Has this employee submitted document(s) for this shift?","enum":[true,false]},"did_not_work":{"type":"boolean","description":"If this employee did not work on this shift, this would be true","enum":[true,false]},"reason":{"type":"object","properties":{"reason_id":{"type":"string","description":"Id of absence reason from the list (if applicable); see '\/api\/v1\/reason-list' route","example":"2"},"reason":{"type":"string","description":"Reason of absence (if applicable); see '\/api\/v1\/reason-list' route","example":"Approved Leave"}}},"roster_shift_comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment left for this roster shift","example":"Please be available at 6:35 AM"},"type":{"type":"string","description":"Roster shift comment types","enum":["general","candidate_submitted"]},"user_id":{"type":"string","description":"User Id of the creator of the comment","example":"1115"},"roster_job_shift_candidate_id":{"type":"string","description":"Id of roster shift and employee in database","example":"3059"},"visible_to_employee":{"type":"integer","description":"Determine whether this comment is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[0,1]}}}},"timesheet_file":{"type":"string","description":"Path to submitted timesheet file","example":"\/secure\/documents\/timesheets-additional\/247"},"last_modified":{"type":"object","properties":{"user":{"type":"string","description":"Admin user name","example":"James Sampler"},"type":{"type":"string","description":"","enum":["Approved","Auto-approved","Bulk adjusted end time","Created","Create unrostered","Declined","Edited","Leave","Pre-approved"]},"timestamp":{"type":"string","description":"Date and time when this record was last edited","example":"2026-06-01 03:32:51"}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"title":{"type":"string","description":"Allowance title","example":"Forklift Allowance"},"type":{"type":"string","description":"Allowance type","enum":["hourly","daily","hour (value by candidate)","km (value by candidate)","weekly","shift"]},"rates":{"type":"object","properties":{"label":{"type":"string","description":"Rate label","example":"Forklift Allowance"},"rate":{"type":"string","description":"Rate of the allowance","example":"0.550000"}}},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5},"award_title":{"type":"string","description":"The award title under which this allowance is based","example":"General Retail Industry Award"},"candidate_submitted":{"type":"string","description":"Is this submitted by employee?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}},"errors":{"type":"array","items":{"type":"object","properties":{"roster_shift_candidate_id":{"type":"string","description":"The id of the shift","example":"350"},"severity":{"type":"string","description":"Severity of the error","enum":["error","warning"]},"type":{"type":"string","description":"Error types","enum":["fatigue","upcoming_fatigue","employee-not-available","employee-not-available-time-based","shift-conflict","job-conflict","position-mis-match","position-not-set","candidate-archived","employee-not-set","leave-conflict","duration-exceeds-limit","zero-duration","negative-duration","timesheet-paid","maximum-weekly-hours-exceeded","shift-already-offered","maximum-weekly-ordinary-hours-exceeded"]},"label":{"type":"string","description":"Friendly description of the error types","example":"Employee is unavailable."},"created_at":{"type":"string","description":"Date and time when record is created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when record was last updated","example":"2026-06-01 03:32:51"},"available_time":{"type":"string","description":"Time when employee should be available","example":"[{\"date\":\"2020-08-31\",\"start\":\"2020-08-31 15:00\",\"end\":\"2020-08-31 23:00\"}]"}}}},"timesheet_status":{"type":"string","description":"Status of timesheet related to this shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>submitted\/pending<\/td><\/tr><tr><td>1<\/td><td>accepted<\/td><\/tr><tr><td>2<\/td><td>invoiced<\/td><\/tr><tr><td>3<\/td><td>declined<\/td><\/tr><tr><td>4<\/td><td>paid<\/td><\/tr><\/table>","enum":["0","1","2","3","4"]},"available_id":{"type":"string","description":"Available timesheet id","example":"13916"},"is_holiday":{"type":"string","description":"Is shift within a holiday?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>treat as normal day, standard rules apply<\/td><\/tr><tr><td>1<\/td><td>set as public holiday, shift will be paid at public holiday rate<\/td><\/tr><tr><td>2<\/td><td>pay base rate, employee normal ordinary rate will be used, no overtime or shift loadings will be applied<\/td><\/tr><\/table>","enum":["0","1","2"]},"employee_declined_status":{"type":"string","description":"Is employee declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}},"message":{"type":"string","description":"Error message returned (if applicable)","example":"date has been locked"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/create":{"post":{"tags":["Approved Shifts"],"summary":"Creates a shift","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"branch_id":{"type":"string","description":"Roster branch Id","example":"54"},"shift_start":{"type":"string","description":"Date and time when shift starts","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"Date and time when shift ends","example":"2026-06-01 03:32:51"},"employee_id":{"type":"string","description":"Employee Id","example":"1065"},"position_id":{"type":"string","description":"Position Id for this shift","example":"439"},"position_group_id":{"type":"string","description":"Employee position group id for this shift (if applicable)","example":"1"},"break_length":{"type":"string","description":"Break length of the shift. (Please use breaks instead)","example":"00:30","deprecated":true},"breaks":{"type":"array","description":"Break length of the shift","items":{"type":"object","properties":{"start":{"type":"string","format":"datetime","example":"2021-10-04 09:00:00","description":"The time of when the break will start"},"length":{"type":"number","format":"float","example":0.5,"description":"The break duration"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]}}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5}}}},"comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment to be added","example":"Employee should arrive 10 minutes early"},"visible_to_employee":{"type":"string","description":"Flag to make this comment visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>visible<\/td><\/tr><tr><td>0<\/td><td>hidden<\/td><\/tr><\/table>","enum":["1","0"]},"comment_id":{"type":"string","description":"If set, will update an existing comment with specified Id; use in conjunction with 'edited'","example":"100"},"edited":{"type":"boolean","description":"This property is required. If set to true, will update an existing comment; use in conjunction with 'comment_id'","enum":[true,false]},"to_delete":{"type":"boolean","description":"This property is required. To delete an existing comment, set this to true (in conjunction with 'comment_id'), otherwise, set to false","enum":[true,false]},"saved":{"type":"boolean","description":"This property is required. To create a new comment or update existing comment, set this to false","enum":[true,false]}}}},"is_holiday":{"type":"string","description":"Set the flag if shift occurs on a holiday\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td><\/td><td>Not a holiday<\/td><\/tr><tr><td>0<\/td><td>Holiday; treat as normal day, standard rules apply<\/td><\/tr><tr><td>1<\/td><td>Holiday; set as public holiday, shift will be paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>Holiday; pay base rate, employee normal ordinary rate will be used, no overtime or shift loadings will be applied<\/td><\/tr><\/table>","enum":[null,0,1,2]},"until_end_time_required":{"type":"string","description":"Set this if employee is required until shift end time\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["0","1"]},"did_not_work":{"type":"string","description":"Set this to 1 if employee did not work during the shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_rule":{"type":"array","items":{"type":"object","properties":{"absent_comment":{"type":"string","description":"Description or reason for absence","example":"Covid Isolation"},"candidate_submitted":{"type":"string","description":"Is employee submitting this leave?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_pay_nopay":{"type":"string","description":"Indicates if leave is paid or unpaid leave","enum":["pay","nopay"]},"leave_rule_amount":{"type":"string","description":"Number of hours taken for this leave","example":"5.5"},"leave_rule_id":{"type":"string","description":"Leave rule id used (or null, if not applicable)","example":"5556"},"leave_title":{"type":"string","description":"Title of leave (based on leave recorded on system) or custom title for this shift","example":"Decline Reason"},"reason":{"type":"string","description":"Reason for leave; for possible values, look at the '\/api\/v1\/reason-list' route","example":"Approved Leave"},"reason_id":{"type":"integer","description":"Reason id in record; for possible values, look at the '\/api\/v1\/reason-list' route","example":2}}}}}}}},"required":true},"operationId":"api_v2_approve-shifts_create_POST","responses":{"403":{"description":"Not authorised"},"201":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"shift_id":{"type":"string","description":"Approved shift ID","example":"15396"},"clock_log_id":{"type":"string","description":"Clock log record ID that corresponds with this approved shift","example":"17"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"is_unrostered_shift":{"type":"boolean","description":"Is this an unrostered shift?","enum":[true,false]},"shift_status":{"type":"integer","description":"Shift status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>unfilled<\/td><\/tr><tr><td>1<\/td><td>ready<\/td><\/tr><tr><td>2<\/td><td>complete<\/td><\/tr><tr><td>3<\/td><td>active<\/td><\/tr><tr><td>4<\/td><td>empty<\/td><\/tr><\/table>","enum":[0,1,2,3,4]},"employee_type":{"type":"string","description":"Employment type as recorded in the system\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>casual<\/td><td>casual<\/td><\/tr><tr><td>full<\/td><td>full time<\/td><\/tr><tr><td>part<\/td><td>part-time<\/td><\/tr><\/table>","enum":["casual","full","part"]},"employee_shift_status":{"type":"integer","description":"Employee offer status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>offer to send<\/td><\/tr><tr><td>1<\/td><td>offer sent to employee<\/td><\/tr><tr><td>2<\/td><td>offer accepted<\/td><\/tr><tr><td>3<\/td><td>offer declined<\/td><\/tr><tr><td>4<\/td><td>offer cancelled<\/td><\/tr><tr><td>5<\/td><td>offer reassigned<\/td><\/tr><tr><td>6<\/td><td>shift submitted by employee<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6]},"verification":{"type":"integer","description":"Employee shift verification status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>not verified<\/td><\/tr><tr><td>1<\/td><td>approved<\/td><\/tr><tr><td>2<\/td><td>rejected<\/td><\/tr><tr><td>3<\/td><td>pre-approved<\/td><\/tr><tr><td>4<\/td><td>on-leave<\/td><\/tr><tr><td>5<\/td><td>automatically approved<\/td><\/tr><tr><td>6<\/td><td>submitted by employee<\/td><\/tr><tr><td>7<\/td><td>locked shift<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6,7]},"client_id":{"type":"string","description":"Operation ID related to this shift","example":"71"},"client_name":{"type":"string","description":"Operation name","example":"Paper Route A"},"client_status":{"type":"string","description":"Operation status","enum":["Available","Unavailable","Pending","Prospective","Declined","Archived","Approved"]},"client_declined":{"type":"integer","description":"Operation declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>declined<\/td><\/tr><tr><td>0<\/td><td>not declined<\/td><\/tr><\/table>","enum":[0,1]},"client_office_code":{"type":"string","description":"Operation office code id","example":"4"},"client_manager":{"type":"string","description":"Operation manager id","example":"17"},"client_suburb":{"type":"string","description":"Operation location (suburb)","example":"Knoxfield"},"position_group_search":{"type":"string","description":"Is position group enabled?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"statement_cycle":{"type":"string","description":"Operation statement cycle\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>weekly<\/td><\/tr><tr><td>2<\/td><td>fortnightly<\/td><\/tr><tr><td>20<\/td><td>advance\/arrears<\/td><\/tr><\/table>","enum":["1","2","20"]},"employee_id":{"type":"string","description":"Employee Id","example":"77"},"external_id":{"type":"string","description":"External ID for the employee. Usually set to previous system's ID","example":"X00510"},"employee_name":{"type":"string","description":"Employee name","example":"Joseph Sample"},"roster_branch_id":{"type":"integer","description":"Roster branch id","example":10},"roster_branch_name":{"type":"string","description":"Roster branch name","example":"Packing Shift Morning"},"roster_branch_state":{"type":"string","description":"Roster branch state; for possible values, look at the '\/api\/v1\/state' route","example":"QLD"},"roster_branch_location":{"type":"string","description":"Roster branch location label; for possible values, look at '\/api\/v1\/location' route","example":"Sydney North"},"scheduled_time":{"type":"object","properties":{"scheduled_start":{"type":"string","description":"Scheduled start time of the shift","example":"2020-08-26 07:00:00"},"scheduled_end":{"type":"string","description":"Scheduled end time of the shift","example":"2020-08-26 15:06:00"},"scheduled_break_length":{"type":"string","description":"Scheduled break length of the shift","example":"00:30"}}},"location":{"type":"object","properties":{"in_latitude":{"type":"string","description":"Clock in latitude","example":"-37.84159622"},"out_longitude":{"type":"string","description":"Clock out longitude","example":"145.24734412"},"out_latitude":{"type":"string","description":"Clock out latitude","example":"-37.84154535"},"in_longitude":{"type":"string","description":"Clock in longitude","example":"145.24734412"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]}}},"recorded_time":{"type":"object","properties":{"recorded_start":{"type":"string","description":"Recorded start time of the shift","example":"2020-08-26 15:21:42"},"recorded_end":{"type":"string","description":"Recorded end time of the shift","example":"2020-08-26 23:36:54"},"recorded_break_length":{"type":"string","description":"Recorded break length of the shift","example":"00:28"}}},"estimated_time":{"type":"object","properties":{"estimated_start":{"type":"string","description":"Estimated start time of the shift","example":"2020-08-26 07:00:00"},"estimated_end":{"type":"string","description":"Estimated end time of the shift","example":"2020-08-26 15:06:00"},"estimated_break_length":{"type":"string","description":"Estimated break length of the shift","example":"00:30"}}},"position":{"type":"object","properties":{"position_id":{"type":"string","description":"Position id for the shift","example":"439"},"title":{"type":"string","description":"Position title for the shift","example":"Process Worker Level 1 (Casual)"},"custom_position_title":{"type":"string","description":"Optional position title for the shift (if applicable)","example":"Level 1 Helper"}}},"position_group":{"type":"object","properties":{"position_group_id":{"type":"string","description":"Employee position group id for shift","example":"1"},"title":{"type":"string","description":"Employee position group title for shift","example":"Position Group 1"}}},"is_clock_log_deleted":{"type":"string","description":"Display the date and time when clock log record is deleted (if applicable)","example":"2026-06-01 03:32:51"},"clock_comment_start":{"type":"string","description":"Clock log comment upon starting","example":"Starting 5 minutes early"},"clock_comment_end":{"type":"string","description":"Clock log comment upon finishing","example":"Finishing 5 minutes early"},"clock_start_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"clock_end_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"leave_rule_id":{"type":"string","description":"Deprecated","example":""},"absent_comments":{"type":"string","description":"Deprecated","example":""},"document":{"type":"boolean","description":"Has this employee submitted document(s) for this shift?","enum":[true,false]},"did_not_work":{"type":"boolean","description":"If this employee did not work on this shift, this would be true","enum":[true,false]},"reason":{"type":"object","properties":{"reason_id":{"type":"string","description":"Id of absence reason from the list (if applicable); see '\/api\/v1\/reason-list' route","example":"2"},"reason":{"type":"string","description":"Reason of absence (if applicable); see '\/api\/v1\/reason-list' route","example":"Approved Leave"}}},"roster_shift_comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment left for this roster shift","example":"Please be available at 6:35 AM"},"type":{"type":"string","description":"Roster shift comment types","enum":["general","candidate_submitted"]},"user_id":{"type":"string","description":"User Id of the creator of the comment","example":"1115"},"roster_job_shift_candidate_id":{"type":"string","description":"Id of roster shift and employee in database","example":"3059"},"visible_to_employee":{"type":"integer","description":"Determine whether this comment is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[0,1]}}}},"timesheet_file":{"type":"string","description":"Path to submitted timesheet file","example":"\/secure\/documents\/timesheets-additional\/247"},"last_modified":{"type":"object","properties":{"user":{"type":"string","description":"Admin user name","example":"James Sampler"},"type":{"type":"string","description":"","enum":["Approved","Auto-approved","Bulk adjusted end time","Created","Create unrostered","Declined","Edited","Leave","Pre-approved"]},"timestamp":{"type":"string","description":"Date and time when this record was last edited","example":"2026-06-01 03:32:51"}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"title":{"type":"string","description":"Allowance title","example":"Forklift Allowance"},"type":{"type":"string","description":"Allowance type","enum":["hourly","daily","hour (value by candidate)","km (value by candidate)","weekly","shift"]},"rates":{"type":"object","properties":{"label":{"type":"string","description":"Rate label","example":"Forklift Allowance"},"rate":{"type":"string","description":"Rate of the allowance","example":"0.550000"}}},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5},"award_title":{"type":"string","description":"The award title under which this allowance is based","example":"General Retail Industry Award"},"candidate_submitted":{"type":"string","description":"Is this submitted by employee?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}},"errors":{"type":"array","items":{"type":"object","properties":{"roster_shift_candidate_id":{"type":"string","description":"The id of the shift","example":"350"},"severity":{"type":"string","description":"Severity of the error","enum":["error","warning"]},"type":{"type":"string","description":"Error types","enum":["fatigue","upcoming_fatigue","employee-not-available","employee-not-available-time-based","shift-conflict","job-conflict","position-mis-match","position-not-set","candidate-archived","employee-not-set","leave-conflict","duration-exceeds-limit","zero-duration","negative-duration","timesheet-paid","maximum-weekly-hours-exceeded","shift-already-offered","maximum-weekly-ordinary-hours-exceeded"]},"label":{"type":"string","description":"Friendly description of the error types","example":"Employee is unavailable."},"created_at":{"type":"string","description":"Date and time when record is created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when record was last updated","example":"2026-06-01 03:32:51"},"available_time":{"type":"string","description":"Time when employee should be available","example":"[{\"date\":\"2020-08-31\",\"start\":\"2020-08-31 15:00\",\"end\":\"2020-08-31 23:00\"}]"}}}},"timesheet_status":{"type":"string","description":"Status of timesheet related to this shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>submitted\/pending<\/td><\/tr><tr><td>1<\/td><td>accepted<\/td><\/tr><tr><td>2<\/td><td>invoiced<\/td><\/tr><tr><td>3<\/td><td>declined<\/td><\/tr><tr><td>4<\/td><td>paid<\/td><\/tr><\/table>","enum":["0 (Submitted\/Pending)","1 (Accepted)","2 (Invoiced)","3 (Declined)","4 (Paid)"]},"available_id":{"type":"string","description":"Available timesheet id","example":"13916"},"is_holiday":{"type":"string","description":"Is shift within a holiday?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>treat as normal day, standard rules apply<\/td><\/tr><tr><td>1<\/td><td>set as public holiday, shift will be paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>pay base rate, employee normal ordinary rate will be used, no overtime or shift loadings will be applied<\/td><\/tr><\/table>","enum":["0","1","2"]},"employee_declined_status":{"type":"string","description":"Is employee declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}},"message":{"type":"string","description":"Error message (if error returned)","example":"date has been locked"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/edit":{"post":{"tags":["Approved Shifts"],"summary":"Edit a shift","description":"Edit a shift\n","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"shift_id":{"type":"string","description":"Shift Id to be edited","example":"38238"},"clock_id":{"type":"string","description":"Clock app user id (if applicable)","example":"100"},"branch_id":{"type":"string","description":"Roster branch Id","example":"54"},"shift_start":{"type":"string","description":"Date and time when shift starts","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"Date and time when shift ends","example":"2026-06-01 03:32:51"},"employee_id":{"type":"string","description":"Employee Id","example":"1065"},"position_id":{"type":"string","description":"Position Id for this shift","example":"439"},"position_group_id":{"type":"string","description":"Employee position group id for this shift (if applicable)","example":"1"},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5}}}},"comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment to be added","example":"Employee should arrive 10 minutes early"},"visible_to_employee":{"type":"string","description":"Flag to make this comment visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>visible<\/td><\/tr><tr><td>0<\/td><td>hidden<\/td><\/tr><\/table>","enum":["1","0"]},"comment_id":{"type":"string","description":"If set, will update an existing comment with specified Id; use in conjunction with 'edited'","example":"100"},"edited":{"type":"boolean","description":"This property is required. If set to true, will update an existing comment; use in conjunction with 'comment_id'","enum":[true,false]},"to_delete":{"type":"boolean","description":"This property is required. To delete an existing comment, set this to true (in conjunction with 'comment_id'), otherwise, set to false","enum":[true,false]},"saved":{"type":"boolean","description":"This property is required. To create a new comment or update existing comment, set this to false","enum":[true,false]}}}},"is_holiday":{"type":"string","description":"Set if this shift occurs on a holiday\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>null<\/td><td>Not a holiday<\/td><\/tr><tr><td>0<\/td><td>Holiday; treat as normal day, standard rules apply<\/td><\/tr><tr><td>1<\/td><td>Holiday; set as public holiday, shift will be paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>Holiday; pay base rate, employee normal ordinary rate will be used, no overtime or shift loadings will be applied<\/td><\/tr><\/table>","enum":[null,0,1,2]},"until_end_time_required":{"type":"string","description":"Set this if employee is required until shift end time\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["0","1"]},"did_not_work":{"type":"string","description":"Set this to 1 if employee did not work during the shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"breaks":{"type":"array","items":{"type":"object","properties":{"start":{"type":"string","description":"Date and time of break start","example":"2026-06-01 03:32:51"},"break_length":{"type":"numeric","description":"The length of the break in hours and minutes","example":"0.5"},"break_is_payable":{"type":"boolean","description":"Flag to indicate if break is payable","enum":[0,1]}}}},"leave_rule":{"type":"array","items":{"type":"object","properties":{"absent_comment":{"type":"string","description":"Description or reason for absence","example":"Covid Isolation"},"candidate_submitted":{"type":"string","description":"Is employee submitting this leave?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_pay_nopay":{"type":"string","description":"Indicates if leave is paid or unpaid leave","enum":["pay","nopay"]},"leave_rule_amount":{"type":"string","description":"Number of hours taken for this leave","example":"5.5"},"leave_rule_id":{"type":"string","description":"Leave rule id used (or null, if not applicable)","example":"5556"},"leave_title":{"type":"string","description":"Title of leave (based on leave recorded on system) or custom title for this shift","example":"Decline Reason"},"reason":{"type":"string","description":"Reason for leave; for possible values, look at the '\/api\/v1\/reason-list' route","example":"Approved Leave"},"reason_id":{"type":"integer","description":"Reason id in record; for possible values, look at the '\/api\/v1\/reason-list' route","example":2}}}}}}}},"required":true},"operationId":"api_v2_approve-shifts_edit_POST","responses":{"403":{"description":"Not authorised"},"201":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"shift_id":{"type":"string","description":"Approved shift ID","example":"15396"},"clock_log_id":{"type":"string","description":"Clock log record ID that corresponds with this approved shift","example":"17"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"is_unrostered_shift":{"type":"boolean","description":"Is this an unrostered shift?","enum":[true,false]},"shift_status":{"type":"integer","description":"Shift status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>unfilled<\/td><\/tr><tr><td>1<\/td><td>ready<\/td><\/tr><tr><td>2<\/td><td>complete<\/td><\/tr><tr><td>3<\/td><td>active<\/td><\/tr><tr><td>4<\/td><td>empty<\/td><\/tr><\/table>","enum":[0,1,2,3,4]},"employee_type":{"type":"string","description":"Employment type as recorded in the system\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>casual<\/td><td>casual<\/td><\/tr><tr><td>full<\/td><td>full time<\/td><\/tr><tr><td>part<\/td><td>part-time<\/td><\/tr><\/table>","enum":["casual","full","part"]},"employee_shift_status":{"type":"integer","description":"Employee offer status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>offer to send<\/td><\/tr><tr><td>1<\/td><td>offer sent to employee<\/td><\/tr><tr><td>2<\/td><td>offer accepted<\/td><\/tr><tr><td>3<\/td><td>offer declined<\/td><\/tr><tr><td>4<\/td><td>offer cancelled<\/td><\/tr><tr><td>5<\/td><td>offer reassigned<\/td><\/tr><tr><td>6<\/td><td>shift submitted by employee<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6]},"verification":{"type":"integer","description":"Employee shift verification status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>not verified<\/td><\/tr><tr><td>1<\/td><td>approved<\/td><\/tr><tr><td>2<\/td><td>rejected<\/td><\/tr><tr><td>3<\/td><td>pre-approved<\/td><\/tr><tr><td>4<\/td><td>on-leave<\/td><\/tr><tr><td>5<\/td><td>automatically approved<\/td><\/tr><tr><td>6<\/td><td>submitted by employee<\/td><\/tr><tr><td>7<\/td><td>locked shift<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6,7]},"client_id":{"type":"string","description":"Operation ID related to this shift","example":"71"},"client_name":{"type":"string","description":"Operation name","example":"Paper Route A"},"client_status":{"type":"string","description":"Operation status","enum":["Available","Unavailable","Pending","Prospective","Declined","Archived","Approved"]},"client_declined":{"type":"integer","description":"Operation declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>declined<\/td><\/tr><tr><td>0<\/td><td>not declined<\/td><\/tr><\/table>","enum":[0,1]},"client_office_code":{"type":"string","description":"Operation office code id","example":"4"},"client_manager":{"type":"string","description":"Operation manager id","example":"17"},"client_suburb":{"type":"string","description":"Operation location (suburb)","example":"Knoxfield"},"position_group_search":{"type":"string","description":"Is position group enabled?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"statement_cycle":{"type":"string","description":"Operation statement cycle","enum":{"1":"Weekly","2":"Fortnightly","20":"Advance\/arrears"}},"employee_id":{"type":"string","description":"Employee Id","example":"77"},"external_id":{"type":"string","description":"External ID for the employee. Usually set to previous system's ID","example":"X00510"},"employee_name":{"type":"string","description":"Employee name","example":"Joseph Sample"},"roster_branch_id":{"type":"integer","description":"Roster branch id","example":10},"roster_branch_name":{"type":"string","description":"Roster branch name","example":"Packing Shift Morning"},"roster_branch_state":{"type":"string","description":"Roster branch state; for possible values, look at the '\/api\/v1\/state' route","example":"QLD"},"roster_branch_location":{"type":"string","description":"Roster branch location label; for possible values, look at '\/api\/v1\/location' route","example":"Sydney North"},"scheduled_time":{"type":"object","properties":{"scheduled_start":{"type":"string","description":"Scheduled start time of the shift","example":"2020-08-26 07:00:00"},"scheduled_end":{"type":"string","description":"Scheduled end time of the shift","example":"2020-08-26 15:06:00"},"scheduled_break_length":{"type":"string","description":"Scheduled break length of the shift","example":"00:30"}}},"location":{"type":"object","properties":{"in_latitude":{"type":"string","description":"Clock in latitude","example":"-37.84159622"},"out_longitude":{"type":"string","description":"Clock out longitude","example":"145.24734412"},"out_latitude":{"type":"string","description":"Clock out latitude","example":"-37.84154535"},"in_longitude":{"type":"string","description":"Clock in longitude","example":"145.24734412"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]}}},"recorded_time":{"type":"object","properties":{"recorded_start":{"type":"string","description":"Recorded start time of the shift","example":"2020-08-26 15:21:42"},"recorded_end":{"type":"string","description":"Recorded end time of the shift","example":"2020-08-26 23:36:54"},"recorded_break_length":{"type":"string","description":"Recorded break length of the shift","example":"00:28"}}},"estimated_time":{"type":"object","properties":{"estimated_start":{"type":"string","description":"Estimated start time of the shift","example":"2020-08-26 07:00:00"},"estimated_end":{"type":"string","description":"Estimated end time of the shift","example":"2020-08-26 15:06:00"},"estimated_break_length":{"type":"string","description":"Estimated break length of the shift","example":"00:30"}}},"position":{"type":"object","properties":{"position_id":{"type":"string","description":"Position id for the shift","example":"439"},"title":{"type":"string","description":"Position title for the shift","example":"Process Worker Level 1 (Casual)"},"custom_position_title":{"type":"string","description":"Optional position title for the shift (if applicable)","example":"Level 1 Helper"}}},"position_group":{"type":"object","properties":{"position_group_id":{"type":"string","description":"Employee position group id for shift","example":"1"},"title":{"type":"string","description":"Employee position group title for shift","example":"Position Group 1"}}},"is_clock_log_deleted":{"type":"string","description":"Display the date and time when clock log record is deleted (if applicable)","example":"2026-06-01 03:32:51"},"clock_comment_start":{"type":"string","description":"Clock log comment upon starting","example":"Starting 5 minutes early"},"clock_comment_end":{"type":"string","description":"Clock log comment upon finishing","example":"Finishing 5 minutes early"},"clock_start_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"clock_end_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"leave_rule_id":{"type":"string","description":"Deprecated","example":""},"absent_comments":{"type":"string","description":"Deprecated","example":""},"document":{"type":"boolean","description":"Has this employee submitted document(s) for this shift?","enum":[true,false]},"did_not_work":{"type":"boolean","description":"If this employee did not work on this shift, this would be true","enum":[true,false]},"reason":{"type":"object","properties":{"reason_id":{"type":"string","description":"Id of absence reason from the list (if applicable); see '\/api\/v1\/reason-list' route","example":"2"},"reason":{"type":"string","description":"Reason of absence (if applicable); see '\/api\/v1\/reason-list' route","example":"Approved Leave"}}},"roster_shift_comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment left for this roster shift","example":"Please be available at 6:35 AM"},"type":{"type":"string","description":"Roster shift comment types","enum":["general","candidate_submitted"]},"user_id":{"type":"string","description":"User Id of the creator of the comment","example":"1115"},"roster_job_shift_candidate_id":{"type":"string","description":"Id of roster shift and employee in database","example":"3059"},"visible_to_employee":{"type":"integer","description":"Determine whether this comment is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[0,1]}}}},"timesheet_file":{"type":"string","description":"Path to submitted timesheet file","example":"\/secure\/documents\/timesheets-additional\/247"},"last_modified":{"type":"object","properties":{"user":{"type":"string","description":"Admin user name","example":"James Sampler"},"type":{"type":"string","description":"","enum":["Approved","Auto-approved","Bulk adjusted end time","Created","Create unrostered","Declined","Edited","Leave","Pre-approved"]},"timestamp":{"type":"string","description":"Date and time when this record was last edited","example":"2026-06-01 03:32:51"}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"title":{"type":"string","description":"Allowance title","example":"Forklift Allowance"},"type":{"type":"string","description":"Allowance type","enum":["hourly","daily","hour (value by candidate)","km (value by candidate)","weekly","shift"]},"rates":{"type":"object","properties":{"label":{"type":"string","description":"Rate label","example":"Forklift Allowance"},"rate":{"type":"string","description":"Rate of the allowance","example":"0.550000"}}},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5},"award_title":{"type":"string","description":"The award title under which this allowance is based","example":"General Retail Industry Award"},"candidate_submitted":{"type":"string","description":"Is this submitted by employee?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}},"errors":{"type":"array","items":{"type":"object","properties":{"roster_shift_candidate_id":{"type":"string","description":"The id of the shift","example":"350"},"severity":{"type":"string","description":"Severity of the error","enum":["error","warning"]},"type":{"type":"string","description":"Error types","enum":["fatigue","upcoming_fatigue","employee-not-available","employee-not-available-time-based","shift-conflict","job-conflict","position-mis-match","position-not-set","candidate-archived","employee-not-set","leave-conflict","duration-exceeds-limit","zero-duration","negative-duration","timesheet-paid","maximum-weekly-hours-exceeded","shift-already-offered","maximum-weekly-ordinary-hours-exceeded"]},"label":{"type":"string","description":"Friendly description of the error types","example":"Employee is unavailable."},"created_at":{"type":"string","description":"Date and time when record is created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when record was last updated","example":"2026-06-01 03:32:51"},"available_time":{"type":"string","description":"Time when employee should be available","example":"[{\"date\":\"2020-08-31\",\"start\":\"2020-08-31 15:00\",\"end\":\"2020-08-31 23:00\"}]"}}}},"timesheet_status":{"type":"string","description":"Status of timesheet related to this shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>submitted\/pending<\/td><\/tr><tr><td>1<\/td><td>accepted<\/td><\/tr><tr><td>2<\/td><td>invoiced<\/td><\/tr><tr><td>3<\/td><td>declined<\/td><\/tr><tr><td>4<\/td><td>paid<\/td><\/tr><\/table>","enum":["0","1","2","3","4"]},"available_id":{"type":"string","description":"Available timesheet id","example":"13916"},"is_holiday":{"type":"string","description":"Is shift within a holiday?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>treat as normal day, standard rules apply<\/td><\/tr><tr><td>1<\/td><td>set as public holiday, shift will be paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>pay base rate, employee normal ordinary rate will be used, no overtime or shift loadings will be applied<\/td><\/tr><\/table>","enum":["0","1","2"]},"employee_declined_status":{"type":"string","description":"Is employee declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}},"message":{"type":"string","description":"Error message (if error returned)","example":"date has been locked"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/decline":{"post":{"tags":["Approved Shifts"],"summary":"Decline a shift","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"decline":{"type":"array","items":{"type":"object","properties":{"shift_id":{"type":"string","description":"Shift Id","example":"38375"},"clock_id":{"type":"string","description":"Clock app user id","example":"1100"},"leave_rule":{"type":"array","items":{"type":"object","properties":{"absent_comment":{"type":"string","description":"Description or reason for absence","example":"Covid Isolation"},"candidate_submitted":{"type":"string","description":"Is employee submitting this leave?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_pay_nopay":{"type":"string","description":"Indicates if leave is paid or unpaid leave","enum":["pay","nopay"]},"leave_rule_amount":{"type":"string","description":"Number of hours taken for this leave","example":"5.5"},"leave_rule_id":{"type":"string","description":"Leave rule id used (or null, if not applicable)","example":"5556"},"leave_title":{"type":"string","description":"Title of leave (based on leave recorded on system) or custom title for this shift","example":"Decline Reason"},"reason":{"type":"string","description":"Reason for leave; for possible values, look at the '\/api\/v1\/reason-list' route","example":"Approved Leave"},"reason_id":{"type":"integer","description":"Reason id in record; for possible values, look at the '\/api\/v1\/reason-list' route","example":2}}}}}}}}}}},"required":true},"operationId":"api_v2_approve-shifts_decline_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"shift_id":{"type":"string","description":"Approved shift ID","example":"15396"},"clock_log_id":{"type":"string","description":"Clock log record ID that corresponds with this approved shift","example":"17"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"is_unrostered_shift":{"type":"boolean","description":"Is this an unrostered shift?","enum":[true,false]},"shift_status":{"type":"integer","description":"Shift status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>unfilled<\/td><\/tr><tr><td>1<\/td><td>ready<\/td><\/tr><tr><td>2<\/td><td>complete<\/td><\/tr><tr><td>3<\/td><td>active<\/td><\/tr><tr><td>4<\/td><td>empty<\/td><\/tr><\/table>","enum":[0,1,2,3,4]},"employee_type":{"type":"string","description":"Employment type as recorded in the system\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>casual<\/td><td>casual<\/td><\/tr><tr><td>full<\/td><td>full time<\/td><\/tr><tr><td>part<\/td><td>part-time<\/td><\/tr><\/table>","enum":["casual","full","part"]},"employee_shift_status":{"type":"integer","description":"Employee offer status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>offer to send<\/td><\/tr><tr><td>1<\/td><td>offer sent to employee<\/td><\/tr><tr><td>2<\/td><td>offer accepted<\/td><\/tr><tr><td>3<\/td><td>offer declined<\/td><\/tr><tr><td>4<\/td><td>offer cancelled<\/td><\/tr><tr><td>5<\/td><td>offer reassigned<\/td><\/tr><tr><td>6<\/td><td>shift submitted by employee<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6]},"verification":{"type":"integer","description":"Employee shift verification status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>not verified<\/td><\/tr><tr><td>1<\/td><td>approved<\/td><\/tr><tr><td>2<\/td><td>rejected<\/td><\/tr><tr><td>3<\/td><td>pre-approved<\/td><\/tr><tr><td>4<\/td><td>on-leave<\/td><\/tr><tr><td>5<\/td><td>automatically approved<\/td><\/tr><tr><td>6<\/td><td>submitted by employee<\/td><\/tr><tr><td>7<\/td><td>locked shift<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6,7]},"client_id":{"type":"string","description":"Operation ID related to this shift","example":"71"},"client_name":{"type":"string","description":"Operation name","example":"Paper Route A"},"client_status":{"type":"string","description":"Operation status","enum":["Available","Unavailable","Pending","Prospective","Declined","Archived","Approved"]},"client_declined":{"type":"integer","description":"Operation declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>declined<\/td><\/tr><tr><td>0<\/td><td>not declined<\/td><\/tr><\/table>","enum":[0,1]},"client_office_code":{"type":"string","description":"Operation office code id","example":"4"},"client_manager":{"type":"string","description":"Operation manager id","example":"17"},"client_suburb":{"type":"string","description":"Operation location (suburb)","example":"Knoxfield"},"position_group_search":{"type":"string","description":"Is position group enabled?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"statement_cycle":{"type":"string","description":"Operation statement cycle\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>weekly<\/td><\/tr><tr><td>2<\/td><td>fortnightly<\/td><\/tr><tr><td>20<\/td><td>advance\/arrears<\/td><\/tr><\/table>","enum":["1","2","20"]},"employee_id":{"type":"string","description":"Employee Id","example":"77"},"external_id":{"type":"string","description":"External ID for the employee. Usually set to previous system's ID","example":"X00510"},"employee_name":{"type":"string","description":"Employee name","example":"Joseph Sample"},"roster_branch_id":{"type":"integer","description":"Roster branch id","example":10},"roster_branch_name":{"type":"string","description":"Roster branch name","example":"Packing Shift Morning"},"roster_branch_state":{"type":"string","description":"Roster branch state; for possible values, look at the '\/api\/v1\/state' route","example":"QLD"},"roster_branch_location":{"type":"string","description":"Roster branch location label; for possible values, look at '\/api\/v1\/location' route","example":"Sydney North"},"scheduled_time":{"type":"object","properties":{"scheduled_start":{"type":"string","description":"Scheduled start time of the shift","example":"2020-08-26 07:00:00"},"scheduled_end":{"type":"string","description":"Scheduled end time of the shift","example":"2020-08-26 15:06:00"},"scheduled_break_length":{"type":"string","description":"Scheduled break length of the shift","example":"00:30"}}},"location":{"type":"object","properties":{"in_latitude":{"type":"string","description":"Clock in latitude","example":"-37.84159622"},"out_longitude":{"type":"string","description":"Clock out longitude","example":"145.24734412"},"out_latitude":{"type":"string","description":"Clock out latitude","example":"-37.84154535"},"in_longitude":{"type":"string","description":"Clock in longitude","example":"145.24734412"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]}}},"recorded_time":{"type":"object","properties":{"recorded_start":{"type":"string","description":"Recorded start time of the shift","example":"2020-08-26 15:21:42"},"recorded_end":{"type":"string","description":"Recorded end time of the shift","example":"2020-08-26 23:36:54"},"recorded_break_length":{"type":"string","description":"Recorded break length of the shift","example":"00:28"}}},"estimated_time":{"type":"object","properties":{"estimated_start":{"type":"string","description":"Estimated start time of the shift","example":"2020-08-26 07:00:00"},"estimated_end":{"type":"string","description":"Estimated end time of the shift","example":"2020-08-26 15:06:00"},"estimated_break_length":{"type":"string","description":"Estimated break length of the shift","example":"00:30"}}},"position":{"type":"object","properties":{"position_id":{"type":"string","description":"Position id for the shift","example":"439"},"title":{"type":"string","description":"Position title for the shift","example":"Process Worker Level 1 (Casual)"},"custom_position_title":{"type":"string","description":"Optional position title for the shift (if applicable)","example":"Level 1 Helper"}}},"position_group":{"type":"object","properties":{"position_group_id":{"type":"string","description":"Employee position group id for shift","example":"1"},"title":{"type":"string","description":"Employee position group title for shift","example":"Position Group 1"}}},"is_clock_log_deleted":{"type":"string","description":"Display the date and time when clock log record is deleted (if applicable)","example":"2026-06-01 03:32:51"},"clock_comment_start":{"type":"string","description":"Clock log comment upon starting","example":"Starting 5 minutes early"},"clock_comment_end":{"type":"string","description":"Clock log comment upon finishing","example":"Finishing 5 minutes early"},"clock_start_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"clock_end_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"leave_rule_id":{"type":"string","description":"Deprecated","example":""},"absent_comments":{"type":"string","description":"Deprecated","example":""},"document":{"type":"boolean","description":"Has this employee submitted document(s) for this shift?","enum":[true,false]},"did_not_work":{"type":"boolean","description":"If this employee did not work on this shift, this would be true","enum":[true,false]},"reason":{"type":"object","properties":{"reason_id":{"type":"string","description":"Id of absence reason from the list (if applicable); see '\/api\/v1\/reason-list' route","example":"2"},"reason":{"type":"string","description":"Reason of absence (if applicable); see '\/api\/v1\/reason-list' route","example":"Approved Leave"}}},"roster_shift_comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment left for this roster shift","example":"Please be available at 6:35 AM"},"type":{"type":"string","description":"Roster shift comment types","enum":["general","candidate_submitted"]},"user_id":{"type":"string","description":"User Id of the creator of the comment","example":"1115"},"roster_job_shift_candidate_id":{"type":"string","description":"Id of roster shift and employee in database","example":"3059"},"visible_to_employee":{"type":"integer","description":"Determine whether this comment is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[0,1]}}}},"timesheet_file":{"type":"string","description":"Path to submitted timesheet file","example":"\/secure\/documents\/timesheets-additional\/247"},"last_modified":{"type":"object","properties":{"user":{"type":"string","description":"Admin user name","example":"James Sampler"},"type":{"type":"string","description":"","enum":["Approved","Auto-approved","Bulk adjusted end time","Created","Create unrostered","Declined","Edited","Leave","Pre-approved"]},"timestamp":{"type":"string","description":"Date and time when this record was last edited","example":"2026-06-01 03:32:51"}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"title":{"type":"string","description":"Allowance title","example":"Forklift Allowance"},"type":{"type":"string","description":"Allowance type","enum":["hourly","daily","hour (value by candidate)","km (value by candidate)","weekly","shift"]},"rates":{"type":"object","properties":{"label":{"type":"string","description":"Rate label","example":"Forklift Allowance"},"rate":{"type":"string","description":"Rate of the allowance","example":"0.550000"}}},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5},"award_title":{"type":"string","description":"The award title under which this allowance is based","example":"General Retail Industry Award"},"candidate_submitted":{"type":"string","description":"Is this submitted by employee?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}},"errors":{"type":"array","items":{"type":"object","properties":{"roster_shift_candidate_id":{"type":"string","description":"The id of the shift","example":"350"},"severity":{"type":"string","description":"Severity of the error","enum":["error","warning"]},"type":{"type":"string","description":"Error types","enum":["fatigue","upcoming_fatigue","employee-not-available","employee-not-available-time-based","shift-conflict","job-conflict","position-mis-match","position-not-set","candidate-archived","employee-not-set","leave-conflict","duration-exceeds-limit","zero-duration","negative-duration","timesheet-paid","maximum-weekly-hours-exceeded","shift-already-offered","maximum-weekly-ordinary-hours-exceeded"]},"label":{"type":"string","description":"Friendly description of the error types","example":"Employee is unavailable."},"created_at":{"type":"string","description":"Date and time when record is created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when record was last updated","example":"2026-06-01 03:32:51"},"available_time":{"type":"string","description":"Time when employee should be available","example":"[{\"date\":\"2020-08-31\",\"start\":\"2020-08-31 15:00\",\"end\":\"2020-08-31 23:00\"}]"}}}},"timesheet_status":{"type":"string","description":"Status of timesheet related to this shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>submitted\/pending<\/td><\/tr><tr><td>1<\/td><td>accepted<\/td><\/tr><tr><td>2<\/td><td>invoiced<\/td><\/tr><tr><td>3<\/td><td>declined<\/td><\/tr><tr><td>4<\/td><td>paid<\/td><\/tr><\/table>","enum":["0","1","2","3","4"]},"available_id":{"type":"string","description":"Available timesheet id","example":"13916"},"is_holiday":{"type":"string","description":"Is shift within a holiday?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>treat as normal day, standard rules apply<\/td><\/tr><tr><td>1<\/td><td>set as public holiday, shift will be paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>pay base rate, employee normal ordinary rate will be used, no overtime or shift loadings will be applied<\/td><\/tr><\/table>","enum":["0","1","2"]},"employee_declined_status":{"type":"string","description":"Is employee declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}},"message":{"type":"string","description":"Error message returned (if applicable)","example":"date has been locked"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/add-overtime":{"post":{"tags":["Approved Shifts"],"summary":"Add overtime to a shift","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"shifts":{"type":"array","items":{"type":"object","properties":{"shift_id":{"type":"string","description":"Roster employee shift Id","example":"38288"},"shift_start":{"type":"string","description":"Start time of the shift","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"End time of the shift","example":"2026-06-01 03:32:51"}}}}}}}},"required":true},"operationId":"api_v2_approve-shifts_add-overtime_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"array","items":{"type":"object","properties":{"shift_id":{"type":"string","description":"Approved shift ID","example":"15396"},"clock_log_id":{"type":"string","description":"Clock log record ID that corresponds with this approved shift","example":"17"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"is_unrostered_shift":{"type":"boolean","description":"Is this an unrostered shift?","enum":[true,false]},"shift_status":{"type":"integer","description":"Shift status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>unfilled<\/td><\/tr><tr><td>1<\/td><td>ready<\/td><\/tr><tr><td>2<\/td><td>complete<\/td><\/tr><tr><td>3<\/td><td>active<\/td><\/tr><tr><td>4<\/td><td>empty<\/td><\/tr><\/table>","enum":[0,1,2,3,4]},"employee_type":{"type":"string","description":"Employment type as recorded in the system\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>casual<\/td><td>casual<\/td><\/tr><tr><td>full<\/td><td>full time<\/td><\/tr><tr><td>part<\/td><td>part-time<\/td><\/tr><\/table>","enum":["casual","full","part"]},"employee_shift_status":{"type":"integer","description":"Employee offer status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>offer to send<\/td><\/tr><tr><td>1<\/td><td>offer sent to employee<\/td><\/tr><tr><td>2<\/td><td>offer accepted<\/td><\/tr><tr><td>3<\/td><td>offer declined<\/td><\/tr><tr><td>4<\/td><td>offer cancelled<\/td><\/tr><tr><td>5<\/td><td>offer reassigned<\/td><\/tr><tr><td>6<\/td><td>shift submitted by employee<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6]},"verification":{"type":"integer","description":"Employee shift verification status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>not verified<\/td><\/tr><tr><td>1<\/td><td>approved<\/td><\/tr><tr><td>2<\/td><td>rejected<\/td><\/tr><tr><td>3<\/td><td>pre-approved<\/td><\/tr><tr><td>4<\/td><td>on-leave<\/td><\/tr><tr><td>5<\/td><td>automatically approved<\/td><\/tr><tr><td>6<\/td><td>submitted by employee<\/td><\/tr><tr><td>7<\/td><td>locked shift<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6,7]},"client_id":{"type":"string","description":"Operation ID related to this shift","example":"71"},"client_name":{"type":"string","description":"Operation name","example":"Paper Route A"},"client_status":{"type":"string","description":"Operation status","enum":["Available","Unavailable","Pending","Prospective","Declined","Archived","Approved"]},"client_declined":{"type":"integer","description":"Operation declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>declined<\/td><\/tr><tr><td>0<\/td><td>not declined<\/td><\/tr><\/table>","enum":[0,1]},"client_office_code":{"type":"string","description":"Operation office code id","example":"4"},"client_manager":{"type":"string","description":"Operation manager id","example":"17"},"client_suburb":{"type":"string","description":"Operation location (suburb)","example":"Knoxfield"},"position_group_search":{"type":"string","description":"Is position group enabled?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"statement_cycle":{"type":"string","description":"Operation statement cycle\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>weekly<\/td><\/tr><tr><td>2<\/td><td>fortnightly<\/td><\/tr><tr><td>20<\/td><td>Advance\/arrears<\/td><\/tr><\/table>","enum":["1","2","20"]},"employee_id":{"type":"string","description":"Employee Id","example":"77"},"external_id":{"type":"string","description":"External ID for the employee. Usually set to previous system's ID","example":"X00510"},"employee_name":{"type":"string","description":"Employee name","example":"Joseph Sample"},"roster_branch_id":{"type":"integer","description":"Roster branch id","example":10},"roster_branch_name":{"type":"string","description":"Roster branch name","example":"Packing Shift Morning"},"roster_branch_state":{"type":"string","description":"Roster branch state; for possible values, look at the '\/api\/v1\/state' route","example":"QLD"},"roster_branch_location":{"type":"string","description":"Roster branch location label; for possible values, look at '\/api\/v1\/location' route","example":"Sydney North"},"scheduled_time":{"type":"object","properties":{"scheduled_start":{"type":"string","description":"Scheduled start time of the shift","example":"2020-08-26 07:00:00"},"scheduled_end":{"type":"string","description":"Scheduled end time of the shift","example":"2020-08-26 15:06:00"},"scheduled_break_length":{"type":"string","description":"Scheduled break length of the shift","example":"00:30"}}},"location":{"type":"object","properties":{"in_latitude":{"type":"string","description":"Clock in latitude","example":"-37.84159622"},"out_longitude":{"type":"string","description":"Clock out longitude","example":"145.24734412"},"out_latitude":{"type":"string","description":"Clock out latitude","example":"-37.84154535"},"in_longitude":{"type":"string","description":"Clock in longitude","example":"145.24734412"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]}}},"recorded_time":{"type":"object","properties":{"recorded_start":{"type":"string","description":"Recorded start time of the shift","example":"2020-08-26 15:21:42"},"recorded_end":{"type":"string","description":"Recorded end time of the shift","example":"2020-08-26 23:36:54"},"recorded_break_length":{"type":"string","description":"Recorded break length of the shift","example":"00:28"}}},"estimated_time":{"type":"object","properties":{"estimated_start":{"type":"string","description":"Estimated start time of the shift","example":"2020-08-26 07:00:00"},"estimated_end":{"type":"string","description":"Estimated end time of the shift","example":"2020-08-26 15:06:00"},"estimated_break_length":{"type":"string","description":"Estimated break length of the shift","example":"00:30"}}},"position":{"type":"object","properties":{"position_id":{"type":"string","description":"Position id for the shift","example":"439"},"title":{"type":"string","description":"Position title for the shift","example":"Process Worker Level 1 (Casual)"},"custom_position_title":{"type":"string","description":"Optional position title for the shift (if applicable)","example":"Level 1 Helper"}}},"position_group":{"type":"object","properties":{"position_group_id":{"type":"string","description":"Employee position group id for shift","example":"1"},"title":{"type":"string","description":"Employee position group title for shift","example":"Position Group 1"}}},"is_clock_log_deleted":{"type":"string","description":"Display the date and time when clock log record is deleted (if applicable)","example":"2026-06-01 03:32:51"},"clock_comment_start":{"type":"string","description":"Clock log comment upon starting","example":"Starting 5 minutes early"},"clock_comment_end":{"type":"string","description":"Clock log comment upon finishing","example":"Finishing 5 minutes early"},"clock_start_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"clock_end_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"leave_rule_id":{"type":"string","description":"Deprecated","example":""},"absent_comments":{"type":"string","description":"Deprecated","example":""},"document":{"type":"boolean","description":"Has this employee submitted document(s) for this shift?","enum":[true,false]},"did_not_work":{"type":"boolean","description":"If this employee did not work on this shift, this would be true","enum":[true,false]},"reason":{"type":"object","properties":{"reason_id":{"type":"string","description":"Id of absence reason from the list (if applicable); see '\/api\/v1\/reason-list' route","example":"2"},"reason":{"type":"string","description":"Reason of absence (if applicable); see '\/api\/v1\/reason-list' route","example":"Approved Leave"}}},"roster_shift_comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment left for this roster shift","example":"Please be available at 6:35 AM"},"type":{"type":"string","description":"Roster shift comment types","enum":["general","candidate_submitted"]},"user_id":{"type":"string","description":"User Id of the creator of the comment","example":"1115"},"roster_job_shift_candidate_id":{"type":"string","description":"Id of roster shift and employee in database","example":"3059"},"visible_to_employee":{"type":"integer","description":"Determine whether this comment is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[0,1]}}}},"timesheet_file":{"type":"string","description":"Path to submitted timesheet file","example":"\/secure\/documents\/timesheets-additional\/247"},"last_modified":{"type":"object","properties":{"user":{"type":"string","description":"Admin user name","example":"James Sampler"},"type":{"type":"string","description":"","enum":["Approved","Auto-approved","Bulk adjusted end time","Created","Create unrostered","Declined","Edited","Leave","Pre-approved"]},"timestamp":{"type":"string","description":"Date and time when this record was last edited","example":"2026-06-01 03:32:51"}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"title":{"type":"string","description":"Allowance title","example":"Forklift Allowance"},"type":{"type":"string","description":"Allowance type","enum":["hourly","daily","hour (value by candidate)","km (value by candidate)","weekly","shift"]},"rates":{"type":"object","properties":{"label":{"type":"string","description":"Rate label","example":"Forklift Allowance"},"rate":{"type":"string","description":"Rate of the allowance","example":"0.550000"}}},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5},"award_title":{"type":"string","description":"The award title under which this allowance is based","example":"General Retail Industry Award"},"candidate_submitted":{"type":"string","description":"Is this submitted by employee?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}},"errors":{"type":"array","items":{"type":"object","properties":{"roster_shift_candidate_id":{"type":"string","description":"The id of the shift","example":"350"},"severity":{"type":"string","description":"Severity of the error","enum":["error","warning"]},"type":{"type":"string","description":"Error types","enum":["fatigue","upcoming_fatigue","employee-not-available","employee-not-available-time-based","shift-conflict","job-conflict","position-mis-match","position-not-set","candidate-archived","employee-not-set","leave-conflict","duration-exceeds-limit","zero-duration","negative-duration","timesheet-paid","maximum-weekly-hours-exceeded","shift-already-offered","maximum-weekly-ordinary-hours-exceeded"]},"label":{"type":"string","description":"Friendly description of the error types","example":"Employee is unavailable."},"created_at":{"type":"string","description":"Date and time when record is created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when record was last updated","example":"2026-06-01 03:32:51"},"available_time":{"type":"string","description":"Time when employee should be available","example":"[{\"date\":\"2020-08-31\",\"start\":\"2020-08-31 15:00\",\"end\":\"2020-08-31 23:00\"}]"}}}},"timesheet_status":{"type":"string","description":"Status of timesheet related to this shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>submitted\/pending<\/td><\/tr><tr><td>1<\/td><td>accepted<\/td><\/tr><tr><td>2<\/td><td>invoiced<\/td><\/tr><tr><td>3<\/td><td>declined<\/td><\/tr><tr><td>4<\/td><td>paid<\/td><\/tr><\/table>","enum":["0","1","2","3","4"]},"available_id":{"type":"string","description":"Available timesheet id","example":"13916"},"is_holiday":{"type":"string","description":"Is shift on a public holiday?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>null<\/td><td>no holiday<\/td><\/tr><tr><td>0<\/td><td>treat as normal day, standard rules will apply<\/td><\/tr><tr><td>1<\/td><td>set as public holiday, shift paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>pay base (OTE) rate, no overtime or shift loading applies<\/td><\/tr><\/table>","enum":[null,0,1,2]},"employee_declined_status":{"type":"string","description":"Is employee declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}},"message":{"type":"string","description":"Error message returned (if applicable)","example":"date has been locked"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/bulk-create":{"post":{"tags":["Approved Shifts"],"summary":"Submit bulk create change request for approve shifts","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"shifts":{"type":"array","items":{"type":"object","properties":{"branch_id":{"type":"string","description":"Roster branch Id","example":"54"},"shift_start":{"type":"string","description":"Date and time when shift starts","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"Date and time when shift ends","example":"2026-06-01 03:32:51"},"employee_id":{"type":"string","description":"Employee Id","example":"1065"},"position_id":{"type":"string","description":"Position Id for this shift","example":"439"},"position_group_id":{"type":"string","description":"Employee position group id for this shift (if applicable)","example":"1"},"break_length":{"type":"string","description":"Break length of the shift. (Please use breaks instead)","example":"00:30","deprecated":true},"breaks":{"type":"array","description":"Break length of the shift","items":{"type":"object","properties":{"start":{"type":"string","format":"datetime","example":"2021-10-04 09:00:00","description":"The time of when the break will start"},"length":{"type":"number","format":"float","example":0.5,"description":"The break duration"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]}}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5}}}},"comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment to be added","example":"Employee should arrive 10 minutes early"},"visible_to_employee":{"type":"string","description":"Flag to make this comment visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>visible<\/td><\/tr><tr><td>0<\/td><td>hidden<\/td><\/tr><\/table>","enum":["1","0"]},"comment_id":{"type":"string","description":"If set, will update an existing comment with specified Id; use in conjunction with 'edited'","example":"100"},"edited":{"type":"boolean","description":"This property is required. If set to true, will update an existing comment; use in conjunction with 'comment_id'","enum":[true,false]},"to_delete":{"type":"boolean","description":"This property is required. To delete an existing comment, set this to true (in conjunction with 'comment_id'), otherwise, set to false","enum":[true,false]},"saved":{"type":"boolean","description":"This property is required. To create a new comment or update existing comment, set this to false","enum":[true,false]}}}},"is_holiday":{"type":"string","description":"Set the flag if shift occurs on a holiday\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td><\/td><td>Not a holiday<\/td><\/tr><tr><td>0<\/td><td>Holiday; treat as normal day, standard rules apply<\/td><\/tr><tr><td>1<\/td><td>Holiday; set as public holiday, shift will be paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>Holiday; pay base rate, employee normal ordinary rate will be used, no overtime or shift loadings will be applied<\/td><\/tr><\/table>","enum":[null,0,1,2]},"until_end_time_required":{"type":"string","description":"Set this if employee is required until shift end time\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["0","1"]},"did_not_work":{"type":"string","description":"Set this to 1 if employee did not work during the shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_rule":{"type":"array","items":{"type":"object","properties":{"absent_comment":{"type":"string","description":"Description or reason for absence","example":"Covid Isolation"},"candidate_submitted":{"type":"string","description":"Is employee submitting this leave?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_pay_nopay":{"type":"string","description":"Indicates if leave is paid or unpaid leave","enum":["pay","nopay"]},"leave_rule_amount":{"type":"string","description":"Number of hours taken for this leave","example":"5.5"},"leave_rule_id":{"type":"string","description":"Leave rule id used (or null, if not applicable)","example":"5556"},"leave_title":{"type":"string","description":"Title of leave (based on leave recorded on system) or custom title for this shift","example":"Decline Reason"},"reason":{"type":"string","description":"Reason for leave; for possible values, look at the '\/api\/v1\/reason-list' route","example":"Approved Leave"},"reason_id":{"type":"integer","description":"Reason id in record; for possible values, look at the '\/api\/v1\/reason-list' route","example":2}}}},"approved":{"type":"boolean","description":"Set this to true if you want to approve the shift at the same time.","example":false}}}}}}}},"required":true},"operationId":"api_v2_approve-shifts_bulk-create_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"key":{"type":"string","example":"bulk_approve_shifts_1890fasafdafdadfsafsa","description":"Use this key to query the result of the process from the bulk status endpoint."}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/weekly-reimbursements\/approve":{"post":{"tags":["Reimbursements"],"summary":"Approve shift's approving reimbursement","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"times_reimbursement_id":{"type":"integer","description":"Reimbursement record Id","example":1010}}}}},"required":true},"operationId":"api_v2_approve-shifts_weekly-reimbursements_approve_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/weekly-reimbursements\/decline":{"post":{"tags":["Reimbursements"],"summary":"Approve shift's declining reimbursement","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"times_reimbursement_id":{"type":"integer","description":"Reimbursement record Id","example":1010}}}}},"required":true},"operationId":"api_v2_approve-shifts_weekly-reimbursements_decline_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/weekly-reimbursements\/create":{"post":{"tags":["Reimbursements"],"summary":"Create a weekly reimbursement, for now this will be pushed into a timesheet during","description":"shift approval process to mimic timesheet functionality\n\n","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"reimbursement_type":{"type":"integer","description":"Reimbursement type Id","example":1},"amount":{"type":"number","description":"Reimbursement amount","example":102.5},"week_end":{"type":"string","description":"Weekend date of the reimbursement (in YYYY-MM-DD format)","example":"2026-06-07"},"date":{"type":"string","description":"The date the reimbursement incurred (in YYYY-MM-DD format)","example":"2026-06-01"},"file":{"type":"file","description":"File attachment linked to reimbursement (Allowed types: png, gif, jpg, pdf)","example":"file"},"roster":{"type":"integer","description":"Roster Id","example":101},"position":{"type":"integer","description":"Position Id","example":24},"can_id":{"type":"integer","description":"Employee Id","example":50},"comment":{"type":"string","description":"An optional comment (max: 250 characters)","example":"Example Comment"}}}}},"required":true},"operationId":"api_v2_approve-shifts_weekly-reimbursements_create_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/weekly-reimbursements\/update":{"post":{"tags":["Reimbursements"],"summary":"Update a times weekly reimbursement item","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"id":{"type":"integer","description":"Id of existing reimbursement record","example":5},"reimbursement_type":{"type":"integer","description":"Reimbursement type Id","example":1},"amount":{"type":"number","description":"Reimbursement amount","example":102.5},"week_end":{"type":"string","description":"Weekend date of the reimbursement (in YYYY-MM-DD format)","example":"2026-06-07"},"date":{"type":"string","description":"The date the reimbursement incurred (in YYYY-MM-DD format)","example":"2026-06-01"},"file":{"type":"file","description":"File attachment linked to reimbursement","example":"file"},"roster":{"type":"integer","description":"Roster Id","example":101},"position":{"type":"integer","description":"Position Id","example":24},"can_id":{"type":"integer","description":"Employee Id","example":50},"comment":{"type":"string","description":"An optional comment (max: 250 characters)","example":"Example Comment"}}}}},"required":true},"operationId":"api_v2_approve-shifts_weekly-reimbursements_update_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/geo-clock\/get-clocked-with-location":{"get":{"tags":["Approved Shifts"],"summary":"Returns the clock log data along with employee, roster branch and shift data","deprecated":true,"requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"date_from":{"type":"string","description":"Start date to search for this request","example":"2026-06-01"},"date_to":{"type":"string","description":"End date to search for this request","example":"2026-06-01"},"client":{"type":"integer","description":"Operation id to search for","example":"43"},"employees":{"type":"array","items":{"type":"integer","description":"Employee id","example":"2345"}},"roster":{"type":"integer","description":"Roster branch id to search for","example":"34"},"filter_auto_pay":{"type":"boolean","description":"Filter to return salaried employees only? (default false)","enum":[1,0]}}}}},"required":true},"operationId":"api_v2_approve-shifts_geo-clock_get-clocked-with-location_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"total":{"type":"integer","description":"Total number of results of the search","example":2668},"per_page":{"type":"integer","description":"Number of items per result page","example":25},"current_page":{"type":"integer","description":"Page number of current result","example":1},"last_page":{"type":"integer","description":"Page number for the last page of search results","example":107},"next_page_url":{"type":"string","description":"Url for next page of search results","example":"https:\/\/foundu.test\/api\/v2\/approve-shifts\/geo-clock\/get-clocked-with-location?page=2"},"prev_page_url":{"type":"string","description":"Url for previous page of search results","example":"https:\/\/foundu.test\/api\/v2\/approve-shifts\/geo-clock\/get-clocked-with-location?page=2"},"from":{"type":"integer","description":"Result number starting from X on this page, out of total results","example":"1"},"to":{"type":"integer","description":"Result number ending to X on this page, out of total results","example":"25"},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Clock log id","example":2022},"c_id":{"type":"integer","description":"Operation id","example":46},"branch_id":{"type":"integer","description":"Roster branch id","example":60},"can_id":{"type":"integer","description":"Employee id","example":131},"job_id":{"type":"integer","description":"Job id for this clock log record (if applicable)","example":10},"shift_id":{"type":"integer","description":"Roster shift id","example":14122},"shift_start":{"type":"string","description":"Shift start time","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"Shift end time","example":"2026-06-01 03:32:51"},"break_start":{"type":"string","description":"Shift break start time","example":"2026-06-01 03:32:51"},"break_end":{"type":"string","description":"Shift break end time","example":"2026-06-01 03:32:51"},"comment_start":{"type":"string","description":"Comment when clocking in","example":"Starting 5 minutes late"},"comment_end":{"type":"string","description":"Comment when clocking out","example":"Under Time super visor send me home "},"shift_start_file_type":{"type":"string","description":"File type for image captured by clock at clock in","example":"jpg"},"shift_end_file_type":{"type":"string","description":"File type for image captured by clock at clock out","example":"jpg"},"created_at":{"type":"string","description":"Date and time when this clock log record was created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when this clock log record was last updated","example":"2026-06-01 03:32:51"},"deleted_at":{"type":"string","description":"Date and time when this clock log record was deleted (if applicable)","example":"2026-06-01 03:32:51"},"in_latitude":{"type":"string","description":"Clock in location latitude","example":"-37.99237396"},"out_latitude":{"type":"string","description":"Clock out location latitude","example":"-37.99237396"},"in_longitude":{"type":"string","description":"Clock in location longitude","example":"145.10273646"},"out_longitude":{"type":"string","description":"Clock out location longitude","example":"145.10273646"},"clock_in_submitted_by":{"type":"string","description":"App used for clocking in","enum":["employee-app","clock-app"]},"clock_out_submitted_by":{"type":"string","description":"App used for clocking out","enum":["employee-app","clock-app"]},"branch":{"type":"object","properties":{"branch_id":{"type":"integer","description":"Roster branch id","example":60},"location_clock_radius":{"type":"integer","description":"Radius (in m) surrounding the roster physical location, where employees can login using the employee app with their own device","example":78},"location_clock_latitude":{"type":"string","description":"Roster branch clock location latitude","example":"-37.99282216"},"location_clock_longitude":{"type":"string","description":"Roster branch clock location longitude","example":"145.10294119"}}},"shift":{"type":"object","properties":{"shift_id":{"type":"integer","description":"Shift id","example":14119},"roster_shift_candidates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Roster shift candidate id","example":14119},"shift_id":{"type":"integer","description":"Shift id","example":14119},"subclass_id":{"type":"integer","description":"Position id","example":181},"position_group_id":{"type":"integer","description":"Position group id (if applicable)","example":5},"has_approved_shift":{"type":"boolean","description":"Does this roster shift contains approved shift?","enum":[true,false]},"position_group":{"type":"object","properties":{"title":{"type":"string","description":"Position group title","example":"General Labourer"},"position_group_id":{"type":"integer","description":"Position group id","example":5}}},"position":{"type":"object","properties":{"position":{"type":"string","description":"Position label","example":"Process Worker - Level 2 (Casual)"},"ID":{"type":"integer","description":"Position id","example":181}}}}}}}},"candidate":{"type":"object","properties":{"id":{"type":"integer","description":"Employee id","example":414},"names":{"type":"string","description":"Employee first name","example":"James"},"surname":{"type":"string","description":"Employee last name","example":"Smith"}}}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/approve-shifts\/geo-clock\/save-roster-radius":{"post":{"tags":["Approved Shifts"],"summary":"Save the roster radius, latitude and longitude of a specific roster branch","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"roster":{"type":"string","description":"Roster branch id","example":"23"},"size":{"type":"string","description":"Radius (in m) surrounding the roster physical location, where employees can login using the employee app with their own device","example":"78"},"longitude":{"type":"string","description":"Roster branch clock location longitude","example":"145.10294119"},"latitude":{"type":"string","description":"Roster branch clock location latitude","example":"-37.99282216"}}}}},"required":true},"operationId":"api_v2_approve-shifts_geo-clock_save-roster-radius_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/roster-branches\/{id}":{"get":{"tags":["Rosters"],"summary":"Get Roster Branch","operationId":"api_v2_roster-branches_{id}_GET","parameters":[{"name":"id","in":"path","description":"Roster branch id","required":true,"schema":{"type":"integer"}},{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"client,location,shift-dynamic-comms-template-settings,note-creator,roster-comment,qualification,tag,rosterComment,rosterDayComment,shiftApprovedDynamicCommsTemplateSettings,shiftDeclinedDynamicCommsTemplateSettings,shiftCancelledDynamicCommsTemplateSettings,unapprovedShiftDynamicCommsTemplateSettings,qualifications,tags"}},{"name":"filter_status","in":"query","description":"Filter roster operation status; available values:\n- Approved\n- Archived\n- Declined\n- Unverified (a.k.a 'Pending' state)\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_code","in":"query","description":"Filter result to match records belonged to specific office codes. The parameter specified is a comma-separated office codes\n","required":false,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"Filter the results where specified string value should match branch id or title of roster branches\n","required":false,"schema":{"type":"string"}},{"name":"filter_roster_or_operation_name","in":"query","description":"Filter the results where specified string value should match branch id, title of roster branches or operation name\n","required":false,"schema":{"type":"string"}},{"name":"filter_client_id","in":"query","description":"Filter the result belonging to specific operations. The value supplied is a comma-separated string of operation IDs\n","required":false,"schema":{"type":"string"}},{"name":"filter_location_id","in":"query","description":"Filter the result belonging to specific locations. The value supplied is a comma-separated string of location IDs\n","required":false,"schema":{"type":"string"}},{"name":"filter_state_id","in":"query","description":"Filter the result belonging to specific states. The value supplied is a comma-separated string of state IDs\n","required":false,"schema":{"type":"string"}},{"name":"filter_roster_phone_number","in":"query","description":"Filter results to return only roster branches with specific contact number. Please not that only numeric string value can\nbe accepted.\n","required":false,"schema":{"type":"string"}},{"name":"filter_active_clients","in":"query","description":"Filter results to return only roster branches from active operations.\n","required":false,"schema":{"type":"string"}},{"name":"filter_roster_comment_by_date","in":"query","description":"Filter the results to only display roster branches with comments created on specific date\n","required":false,"schema":{"type":"string"}},{"name":"filter_tags","in":"query","description":"Filter results to show operations with specified tag IDs. The query string is a comma-separated tag IDs.\nUse in conjunction with filter_tags_in_options=and|or to further refine the list\n","required":false,"schema":{"type":"string"}},{"name":"filter_roster_ids","in":"query","description":"Filter results to show only roster branches with specific IDs. The required parameter is an array of roster branch IDs\n","required":false,"schema":{"type":"string"}},{"name":"filter_archive_only","in":"query","description":"Filter results to show only the archived roster branches\n","required":false,"schema":{"type":"string"}},{"name":"filter_has_approve_shifts_only","in":"query","description":"Filter results to show only the roster branches has approve-shifts in period\n","required":false,"schema":{"type":"string"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order the results by 'id' or 'title' by 'asc' or 'desc'. Example 'title:asc'.\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 3000 per page.","required":false,"schema":{"type":"integer"}},{"name":"filter_updated_since","in":"query","description":"Filters the results to records updated since timestamp\n","required":false,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/RosterBranchV2Transformer"},"included":{"type":"object","properties":{"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientTransformer"},"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"},"location-{id}":{"type":"object","$ref":"#\/components\/schemas\/LocationTransformer"},"shift-dynamic-comms-template-settings-{id}":{"type":"object","$ref":"#\/components\/schemas\/DynamicCommsTemplateSettingsTransformer"},"note-creator-{id}":{"type":"object","$ref":"#\/components\/schemas\/UserTransformer"},"operation-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientLoginTransformer"},"employee-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeePermissionsTransformer"},"admin-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/AdminTransformer"},"employee-email-sso-disabled-domain-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmailInDisabledDomainTransformer"},"roster-comment-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterCommentTransformer"},"qualification-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterBranchQualificationTransformer"},"qualificationExpiry-{id}":{"type":"object","$ref":"#\/components\/schemas\/CandidateQualificationExpiryTransformer"},"tag-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterBranchTagTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/roster-branches\/archive\/recover":{"post":{"tags":["Rosters"],"summary":"Recover Archived Roster Branch","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"ids":{"type":"array","items":{"type":"int","description":"Roster branch IDs that user wish to recover \/ unarchive","example":57}}}}}},"required":true},"operationId":"api_v2_roster-branches_archive_recover_POST","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"string","description":"Status of the request, mixed types (string\/bool)","enum":[true,"Error"]},"error":{"type":"boolean","description":"This should only appear when an error happened","example":true},"message":{"type":"string","description":"Error message. This should only appear when an error happened","example":"The given data failed to pass validation"},"detail":{"type":"object","properties":{"original":{"type":"object","properties":{"errorMessage1":{"type":"string","description":"Error message line 1","example":"Upcoming shifts found in roster, please remove before archiving"},"errorMessage2":{"type":"string","description":"Error message line 2","example":"Last shift found on 01\/06\/2026"}}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/roster-branches\/archive\/{id}":{"post":{"tags":["Rosters"],"summary":"Archive a Roster Branch","operationId":"api_v2_roster-branches_archive_{id}_POST","parameters":[{"name":"id","in":"path","description":"Roster branch id","required":true,"schema":{"type":"integer"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"string","description":"Status of the request, mixed types","enum":[true,"Error"]},"error":{"type":"boolean","description":"This should only appear when an error happened","example":true},"message":{"type":"string","description":"Error message. This should only appear when an error happened","example":"The given data failed to pass validation"},"detail":{"type":"object","properties":{"original":{"type":"object","properties":{"errorMessage1":{"type":"string","description":"Error message line 1","example":"Upcoming shifts found in roster, please remove before archiving"},"errorMessage2":{"type":"string","description":"Error message line 2","example":"Last shift found on 01\/06\/2026"}}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/roster-branches\/add":{"post":{"tags":["Rosters"],"summary":"Add a new Roster Branch","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":["country_code","loc_id","title","state_id","street","suburb","postcode","note_visible_to_employee"],"properties":{"c_id":{"description":"Operation ID related to the roster branch","type":"string","example":"2"},"country_code":{"description":"Country code for this roster branch","type":"string","enum":["AU","NZ"],"required":true},"loc_id":{"description":"Location ID of the roster branch as specified in Platform Settings -> Locations Admin page","type":"string","example":"1","required":true},"title":{"description":"Roster branch name","type":"string","example":"Morning Shift for Store A","required":true},"state_id":{"description":"State ID of the location of the roster branch\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>ACT<\/td><\/tr><tr><td>2<\/td><td>NSW<\/td><\/tr><tr><td>3<\/td><td>NT<\/td><\/tr><tr><td>4<\/td><td>QLD<\/td><\/tr><tr><td>5<\/td><td>SA<\/td><\/tr><tr><td>6<\/td><td>TAS<\/td><\/tr><tr><td>7<\/td><td>VIC<\/td><\/tr><tr><td>8<\/td><td>WA<\/td><\/tr><\/table>","type":"string","example":"'4' for QLD","required":true},"street":{"description":"Street name of the roster branch location","type":"string","example":"241 Queen Street","required":true},"suburb":{"description":"Suburb of the roster branch location","type":"string","example":"Milton","required":true},"postcode":{"description":"Postcode of the roster branch location","type":"string","example":"4001","required":true},"contact_name":{"description":"Contact name for the roster branch","type":"string","example":"John Smith"},"contact_number":{"description":"Contact number for the roster branch","type":"string","example":"0412345678"},"po":{"description":"Purchase Order or Cost Code of the roster branch","type":"string","example":"PO-20192"},"note":{"description":"Roster branch note, 255 characters maximum","type":"string","example":"Morning roster for shop A"},"note_visible_to_employee":{"description":"Setting value whether roster branch note is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","type":"integer","example":1,"required":true},"location":{"description":"Location of the roster branch","type":"object","properties":{"longitude":{"description":"Longitude of the roster branch location","type":"number","example":146.7291969},"latitude":{"description":"Latitude of the roster branch location","type":"number","example":-19.3130024},"radius":{"description":"The radius (in m) from roster location, where employees can safely clock in from their own device using foundU Employee app","type":"number","example":5}}}}}}}},"operationId":"api_v2_roster-branches_add_POST","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"client,location,shift-dynamic-comms-template-settings,note-creator,roster-comment,qualification,tag,rosterComment,rosterDayComment,shiftApprovedDynamicCommsTemplateSettings,shiftDeclinedDynamicCommsTemplateSettings,shiftCancelledDynamicCommsTemplateSettings,unapprovedShiftDynamicCommsTemplateSettings,qualifications,tags"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/RosterBranchV2Transformer"},"included":{"type":"object","properties":{"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientTransformer"},"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"},"location-{id}":{"type":"object","$ref":"#\/components\/schemas\/LocationTransformer"},"shift-dynamic-comms-template-settings-{id}":{"type":"object","$ref":"#\/components\/schemas\/DynamicCommsTemplateSettingsTransformer"},"note-creator-{id}":{"type":"object","$ref":"#\/components\/schemas\/UserTransformer"},"operation-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientLoginTransformer"},"employee-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeePermissionsTransformer"},"admin-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/AdminTransformer"},"employee-email-sso-disabled-domain-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmailInDisabledDomainTransformer"},"roster-comment-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterCommentTransformer"},"qualification-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterBranchQualificationTransformer"},"qualificationExpiry-{id}":{"type":"object","$ref":"#\/components\/schemas\/CandidateQualificationExpiryTransformer"},"tag-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterBranchTagTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/roster-branches\/update\/{id}":{"post":{"tags":["Rosters"],"summary":"Update a Roster Branch","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":["country_code","loc_id","title","state_id","street","suburb","postcode","note_visible_to_employee"],"properties":{"c_id":{"description":"Operation ID related to the roster branch","type":"string","example":"2"},"country_code":{"description":"Country code for this roster branch","type":"string","enum":["AU","NZ"],"required":true},"loc_id":{"description":"Location ID of the roster branch as specified in Platform Settings -> Locations Admin page","type":"string","example":"1","required":true},"title":{"description":"Roster branch name","type":"string","example":"Morning Shift for Store A","required":true},"state_id":{"description":"State ID of the location of the roster branch\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>ACT<\/td><\/tr><tr><td>2<\/td><td>NSW<\/td><\/tr><tr><td>3<\/td><td>NT<\/td><\/tr><tr><td>4<\/td><td>QLD<\/td><\/tr><tr><td>5<\/td><td>SA<\/td><\/tr><tr><td>6<\/td><td>TAS<\/td><\/tr><tr><td>7<\/td><td>VIC<\/td><\/tr><tr><td>8<\/td><td>WA<\/td><\/tr><\/table>","type":"string","example":"'4' for QLD","required":true},"street":{"description":"Street name of the roster branch location","type":"string","example":"241 Queen Street","required":true},"suburb":{"description":"Suburb of the roster branch location","type":"string","example":"Milton","required":true},"postcode":{"description":"Postcode of the roster branch location","type":"string","example":"4001","required":true},"contact_name":{"description":"Contact name for the roster branch","type":"string","example":"John Smith"},"contact_number":{"description":"Contact number for the roster branch","type":"string","example":"0412345678"},"po":{"description":"Purchase Order or Cost Code of the roster branch","type":"string","example":"PO-20192"},"note":{"description":"Roster branch note, 255 characters maximum","type":"string","example":"Morning roster for shop A"},"note_visible_to_employee":{"description":"Setting value whether roster branch note is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","type":"integer","example":1,"required":true},"location":{"description":"Location of the roster branch","type":"object","properties":{"longitude":{"description":"Longitude of the roster branch location","type":"number","example":146.7291969},"latitude":{"description":"Latitude of the roster branch location","type":"number","example":-19.3130024},"radius":{"description":"The radius (in m) from roster location, where employees can safely clock in from their own device using foundU Employee app","type":"number","example":5}}}}}}}},"operationId":"api_v2_roster-branches_update_{id}_POST","parameters":[{"name":"id","in":"path","description":"Roster branch id","required":true,"schema":{"type":"integer"}},{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"client,location,shift-dynamic-comms-template-settings,note-creator,roster-comment,qualification,tag,rosterComment,rosterDayComment,shiftApprovedDynamicCommsTemplateSettings,shiftDeclinedDynamicCommsTemplateSettings,shiftCancelledDynamicCommsTemplateSettings,unapprovedShiftDynamicCommsTemplateSettings,qualifications,tags"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/RosterBranchV2Transformer"},"included":{"type":"object","properties":{"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientTransformer"},"operation-tags-{id}":{"type":"object","$ref":"#\/components\/schemas\/OperationTagTransformer"},"location-{id}":{"type":"object","$ref":"#\/components\/schemas\/LocationTransformer"},"shift-dynamic-comms-template-settings-{id}":{"type":"object","$ref":"#\/components\/schemas\/DynamicCommsTemplateSettingsTransformer"},"note-creator-{id}":{"type":"object","$ref":"#\/components\/schemas\/UserTransformer"},"operation-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientLoginTransformer"},"employee-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeePermissionsTransformer"},"admin-user-{id}":{"type":"object","$ref":"#\/components\/schemas\/AdminTransformer"},"employee-email-sso-disabled-domain-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmailInDisabledDomainTransformer"},"roster-comment-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterCommentTransformer"},"qualification-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterBranchQualificationTransformer"},"qualificationExpiry-{id}":{"type":"object","$ref":"#\/components\/schemas\/CandidateQualificationExpiryTransformer"},"tag-{id}":{"type":"object","$ref":"#\/components\/schemas\/RosterBranchTagTransformer"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/clock\/{clientId}\/settings":{"get":{"tags":["Clock"],"summary":"Get the clock settings for a specific operation","operationId":"api_v2_clock_{clientId}_settings_GET","parameters":[{"name":"clientId","in":"path","description":"Operation ID","required":true,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"clock_take_picture":{"type":"boolean","description":"Require employee to take a photo upon clocking in\/out","enum":[true,false]},"clock_has_breaks":{"type":"boolean","description":"Record breaks through clock app and work app","enum":[true,false]},"clock_scan_card":{"type":"boolean","description":"Employee can sign in using access card (QR code)","enum":[true,false]},"clock_message_of_the_day":{"type":"string","description":"Display message to all employees when clocking in","example":"Have a nice day"},"clock_adjust_start_time_threshold_before":{"type":"integer","description":"Minutes prior to a shift starts the rostered time will be used over the time recorded clocking in","example":10},"clock_adjust_start_time_threshold_after":{"type":"integer","description":"Minutes after a shift starts the rostered time will be used over the time recorded clocking in","example":5},"clock_adjust_end_time_threshold_before":{"type":"integer","description":"Minutes prior to a shift finishes the rostered time will be used over the time recorded clocking out","example":5},"clock_adjust_end_time_threshold_after":{"type":"integer","description":"Minutes after a shift finishes the rostered time will be used over the time recorded clocking out","example":10},"clock_reason_pre_start_threshold":{"type":"integer","description":"Minutes prior to a shift starting before a reason is required for starting early","example":30},"clock_reason_post_start_threshold":{"type":"integer","description":"Minutes after a shift start before a reason is required for starting late","example":5},"clock_reason_pre_end_threshold":{"type":"integer","description":"Minutes prior to a shift ending before a reason is required for finishing early","example":20},"clock_reason_post_end_threshold":{"type":"integer","description":"Minutes after a shift ends before a reason is required for finishing late","example":20},"clock_allow_device_logout":{"type":"boolean","description":"Enbalbe log out of Clock App by clicking the logo","enum":[true,false]},"clock_enforce_reason_for_unrostered_shifts":{"type":"boolean","description":"Employees must provide a reason for clocking in if they were not rostered to work","enum":[true,false]},"clock_allow_unscheduled_paid_breaks":{"type":"boolean","description":"Employees can clock both rostered and unrostered paid breaks. Disable to allow only rostered paid breaks to be clocked.","enum":[true,false]},"clock_enforce_select_roster":{"type":"boolean","description":"Employees must select a roster when clocking in without a shift","enum":[true,false]},"clock_enforce_select_break_time":{"type":"boolean","description":"Employees must enter their break time taken upon clocking out","enum":[true,false]}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/clock\/{clientId}\/employee\/{id}\/next-work":{"post":{"tags":["Clock"],"summary":"Perform a call to see if an employee has an upcoming work scheduled","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"timestamp_now":{"type":"string","description":"Current date and time","example":"2026-06-01 03:32:51"}}}}},"required":true},"operationId":"api_v2_clock_{clientId}_employee_{id}_next-work_POST","parameters":[{"name":"clientId","in":"path","description":"Operation ID","required":true,"schema":{"type":"integer"}},{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"upcoming_work":{"type":"object","properties":{"shift_id":{"type":"string","description":"Shift id","example":"29400"},"job_id":{"type":"string","description":"Job id","example":"17"},"start":{"type":"string","description":"Shift start time","example":"2026-06-01 03:32:51"},"end":{"type":"string","description":"Shift end time","example":"2026-06-01 03:32:51"},"until_required":{"type":"string","description":"Is employee needed until shift end?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"branch_id":{"type":"string","description":"Roster branch id","example":"114"},"break":{"type":"string","description":"Length of shift break (in hours, decimal format)","example":"0.5"},"human_readable_break":{"type":"string","description":"Length of shift break in human-readable format","example":"0hrs30min"},"comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Employee shift comment","example":"Please let me know if you finish early"}}}},"roster_day_comment":{"type":"object","properties":{"branch_id":{"type":"string","description":"Roster branch id","example":"17"},"shift_date":{"type":"string","description":"Date of the shift","example":"2026-06-01"},"shift_day_comment":{"type":"string","description":"Roster comment for the day","example":"Saturday work is still happening tomorrow"}}},"roster_note":{"type":"string","description":"Roster note","example":"Day Shift Start 6am End 4pm Night Shift Start 4pm End 2am "}}},"current_work":{"type":"object","properties":{"shift_id":{"type":"string","description":"Shift id","example":"29400"},"job_id":{"type":"string","description":"Job id","example":"17"},"start":{"type":"string","description":"Shift start time","example":"2026-06-01 03:32:51"},"end":{"type":"string","description":"Shift end time","example":"2026-06-01 03:32:51"},"until_required":{"type":"string","description":"Is employee needed until shift end?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"branch_id":{"type":"string","description":"Roster branch id","example":"114"},"break":{"type":"string","description":"Length of shift break (in hours, decimal format)","example":"0.5"},"human_readable_break":{"type":"string","description":"Length of shift break in human-readable format","example":"0hrs30min"},"comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Employee shift comment","example":"Please let me know if you finish early"}}}},"roster_day_comment":{"type":"object","properties":{"branch_id":{"type":"string","description":"Roster branch id","example":"17"},"shift_date":{"type":"string","description":"Date of the shift","example":"2026-06-01"},"shift_day_comment":{"type":"string","description":"Roster comment for the day","example":"Saturday work is still happening tomorrow"}}},"roster_note":{"type":"string","description":"Roster note","example":"Day Shift Start 6am End 4pm Night Shift Start 4pm End 2am "}}},"current_clock_row":{"type":"object","properties":{"location_id":{"type":"string","description":"Operation id","example":"15"},"employee_id":{"type":"string","description":"Employee id","example":"914"},"job_id":{"type":"string","description":"Job id","example":"17"},"shift_id":{"type":"string","description":"Shift id","example":"29400"},"shift_start":{"type":"string","description":"Shift start time","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"Shift end time","example":"2026-06-01 03:32:51"},"break_start":{"type":"string","description":"Break start time","example":"2026-06-01 03:32:51"},"break_end":{"type":"string","description":"Break end time","example":"2026-06-01 03:32:51"},"created_at":{"type":"string","description":"Date and time when this record was created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when this record was last updated","example":"2026-06-01 03:32:51"},"c_id":{"type":"string","description":"Operation id","example":"15"},"branch_id":{"type":"string","description":"Roster branch id","example":"114"},"shift_start_file_type":{"type":"string","description":"File type for clock picture taken at shift start","example":"jpg"},"shift_end_file_type":{"type":"string","description":"File type for clock picture taken at shift end","example":"jpg"},"comment_start":{"type":"string","description":"Employee comment for start of shift","example":"Asked to start early"},"comment_end":{"type":"string","description":"Employee comment for end of shift","example":"Overtime"},"in_latitude":{"type":"string","description":"Location latitude for start of shift","example":"-37.99244760"},"in_longitude":{"type":"string","description":"Location longitude for start of shift","example":"145.10251075"},"out_latitude":{"type":"string","description":"Location latitude for end of shift","example":"-37.99244760"},"out_longitude":{"type":"string","description":"Location longitude for end of shift","example":"145.10251075"},"clock_in_submitted_by":{"type":"string","description":"App type used when clocking in","enum":["employee-app","clock-app"]},"clock_out_submitted_by":{"type":"string","description":"App type used when clocking out","enum":["employee-app","clock-app"]},"duration_decimal":{"type":"string","description":"Shift duration in decimal format","example":"7.30"},"duration_human":{"type":"string","description":"Shift duration in human-readable format","example":"7hrs30min"}}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/clock\/{clientId}\/employee\/{id}\/start\/shift":{"post":{"tags":["Clock"],"summary":"Perform a clock in for an employee","requestBody":{"description":"Request example","content":{"multipart\/form-data":{"schema":{"type":"object","required":[],"properties":{"start_time":{"type":"string","description":"Start time when clocking in","example":"2026-06-01 03:32:51"},"shift_id":{"type":"string","description":"Roster shift id","example":"24099"},"job_id":{"type":"string","description":"Job id","example":"17"},"branch_id":{"type":"string","description":"Roster branch id","example":"114"},"comment":{"type":"string","description":"Employee comment for the start of the shift","example":"Starting early for this shift"},"image":{"type":"string","format":"binary","description":"Uploaded employee picture taken when clocking in"}}}}},"required":true},"operationId":"api_v2_clock_{clientId}_employee_{id}_start_shift_POST","parameters":[{"name":"clientId","in":"path","description":"Operation ID","required":true,"schema":{"type":"integer"}},{"name":"id","in":"path","description":"Employee ID","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/clock\/{clientId}\/employee\/{id}\/end\/shift":{"post":{"tags":["Clock"],"summary":"Perform a clock out for an employee","requestBody":{"description":"Request example","content":{"multipart\/form-data":{"schema":{"type":"object","required":[],"properties":{"clock_log_id":{"type":"string","description":"Clock log id for the current shift","example":"8612"},"end_time":{"type":"string","description":"End time when clocking out","example":"2026-06-01 03:32:51"},"comment":{"type":"string","description":"Employee comment for the end of the shift","example":"Finished later than start time"},"image":{"type":"string","format":"binary","description":"Uploaded employee picture taken when clocking out"},"break_start_time":{"type":"string","description":"Shift break start time","example":"2026-06-01 03:32:51"},"break_end_time":{"type":"string","description":"Shift break end time","example":"2026-06-01 03:32:51"}}}}},"required":true},"operationId":"api_v2_clock_{clientId}_employee_{id}_end_shift_POST","parameters":[{"name":"clientId","in":"path","description":"Operation ID","required":true,"schema":{"type":"integer"}},{"name":"id","in":"path","description":"Employee ID","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/clock\/{clientId}\/employee\/{id}\/start\/break":{"post":{"tags":["Clock"],"summary":"Perform a start of break call for an employee","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"clock_log_id":{"type":"string","description":"Clock log id for the current shift","example":"8612"},"time":{"type":"string","description":"Date and time when shift break was started","example":"2026-06-01 03:32:51"}}}}},"required":true},"operationId":"api_v2_clock_{clientId}_employee_{id}_start_break_POST","parameters":[{"name":"clientId","in":"path","description":"Operation ID","required":true,"schema":{"type":"integer"}},{"name":"id","in":"path","description":"Employee ID","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/clock\/{clientId}\/employee\/{id}\/end\/break":{"post":{"tags":["Clock"],"summary":"Perform an end of break call for an employee","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"clock_log_id":{"type":"string","description":"Clock log id for the current shift","example":"8612"},"time":{"type":"string","description":"Date and time when shift break was finished","example":"2026-06-01 03:32:51"}}}}},"required":true},"operationId":"api_v2_clock_{clientId}_employee_{id}_end_break_POST","parameters":[{"name":"clientId","in":"path","description":"Operation ID","required":true,"schema":{"type":"integer"}},{"name":"id","in":"path","description":"Employee ID","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/workforce-report-centre\/qualifications-and-licences":{"get":{"tags":["Workforce Reporting"],"summary":"Qualifications and Licences","operationId":"api_v2_workforce-report-centre_qualifications-and-licences_GET","parameters":[{"name":"filter_employee_ids","in":"query","description":"Filter by employee ids\n","required":false,"schema":{"type":"string"}},{"name":"filter_employee_status","in":"query","description":"Filter by employee status\n","required":false,"schema":{"type":"string"}},{"name":"filter_qualification_types","in":"query","description":"Filter based on qualification types\n","required":false,"schema":{"type":"string"}},{"name":"filter_expire_status","in":"query","description":"Filter based on the expiry status\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_codes","in":"query","description":"Filter by employee office codes\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 500 per page.","required":false,"schema":{"type":"integer"}},{"name":"page","in":"query","description":"Set the page number to be returned for this request out of X total pages","required":false,"schema":{"type":"integer"}},{"name":"order","in":"query","description":"Order by expiry date, capture date, qualification name, upload date, expiring in (days)\n\nExample: expiry_date:desc to sort results expiry date descending order (later first)\n","required":false,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"Free text search function for finding employees, qualifications and licences\n","required":false,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"total":{"type":"int","description":"Total number of items in results","example":5},"per_page":{"type":"int","description":"Number of results returned per page","example":100},"current_page":{"type":"int","description":"Current page number of results","example":1},"last_page":{"type":"int","description":"Last page number for results","example":2},"next_page_url":{"type":"string","description":"Path for next page request","example":"\/api\/v2\/workforce-report-centre\/qualifications-and-licences?page=99"},"prev_page_url":{"type":"string","description":"Path for previous page request","example":"\/api\/v2\/workforce-report-centre\/qualifications-and-licences?page=4"},"from":{"type":"int","description":"Item order on this page starts from this (based on current page and per page item)","example":1},"to":{"type":"int","description":"Item order on this page ends at this (based on current page and per page item)","example":10},"data":{"type":"array","items":{"type":"object","properties":{"Employee Id":{"type":"number","description":"Employee ID","example":10},"Office Code":{"type":"string","description":"Employee Office Code","example":"Main Office"},"Employee Name":{"type":"string","description":"Employee Name","example":"John Smith"},"Candidate Status":{"type":"string","description":"Employee status","example":"Available"},"Declined":{"type":"string","description":"Employee profile decline\/archive status","example":""},"File Name":{"type":"string","description":"Name of the file associated with this record","example":"First_Aid-234234234.pdf"},"Qualification Name":{"type":"string","description":"Name of the qualification uploaded","example":"First Aid"},"Qualification Type":{"type":"string","description":"Type of the qualification","example":"First Aid"},"Qualification ID":{"type":"number","description":"The qualification ID in the system","example":2},"Captured Date":{"type":"string","description":"Date of when the qualification was captured on the profile","example":"2025-06-01"},"Expiry Type":{"type":"string","description":"Expiration Type (Assessment date or Expiration date)","example":"expiry"},"Expiry Date":{"type":"string","description":"When the expiry or reassessment will happen","example":"2026-07-01"},"Expired":{"type":"string","description":"Whether this has already expired or not","example":"No"},"Expiring in (days)":{"type":"string","description":"Number of days until expiry","example":395},"Assessment Days":{"type":"string","description":"For qualifications with \"expiry type: assess\", this is the number of days since last assessment before an employee is required to be reassessed","example":""},"Uploaded Date":{"type":"string","description":"When the qualification file was uploaded","example":"2025-06-01 03:32:51"},"Additional Info":{"type":"string","description":"Any additional information relating to this record (if applicable)","example":"Licence Number: 123qwerty3"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/workforce-report-centre\/attendance-and-performance":{"get":{"tags":["Workforce Reporting"],"summary":"Attendance and Performance","operationId":"api_v2_workforce-report-centre_attendance-and-performance_GET","parameters":[{"name":"duration","in":"query","description":"Specify duration to extract your data\n","required":true,"schema":{"type":"string","enum":["custom_date_range","this_month","last_month","last_week","last_30_days","last_90_days","last_120_days","this_financial_year","last_financial_year","specific_date_range","all"]}},{"name":"filter_employee_ids","in":"query","description":"Filter by employee IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_operation_ids","in":"query","description":"Filter by operation IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_positions","in":"query","description":"Filter by position IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_reason_type","in":"query","description":"Filter by reason type ID\n\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Attendance<\/td><\/tr><tr><td>2<\/td><td>Performance<\/td><\/tr><tr><td>3<\/td><td>Termination<\/td><\/tr><\/table>","required":false,"schema":{"type":"integer"}},{"name":"filter_reason","in":"query","description":"Filter by reason ID\n\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Termination<\/td><\/tr><tr><td>2<\/td><td>Called in Sick <\/td><\/tr><tr><td>3<\/td><td>No Show<\/td><\/tr><tr><td>4<\/td><td>Resigned<\/td><\/tr><tr><td>5<\/td><td>Dismissed<\/td><\/tr><\/table>","required":false,"schema":{"type":"integer"}},{"name":"filter_reason_type_ids","in":"query","description":"Filter by reason type IDs (Don\u2019t use this filter with filter_reason_type)\n\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Attendance<\/td><\/tr><tr><td>2<\/td><td>Performance<\/td><\/tr><tr><td>3<\/td><td>Termination<\/td><\/tr><\/table>","required":false,"schema":{"type":"array of integers"}},{"name":"filter_reason_ids","in":"query","description":"Filter by reason IDs (Don\u2019t use this filter with filter_reason)\n\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Termination<\/td><\/tr><tr><td>2<\/td><td>Called in Sick <\/td><\/tr><tr><td>3<\/td><td>No Show<\/td><\/tr><tr><td>4<\/td><td>Resigned<\/td><\/tr><tr><td>5<\/td><td>Dismissed<\/td><\/tr><\/table>","required":false,"schema":{"type":"array of integers"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}},{"name":"page","in":"query","description":"Set the page number to be returned for this request out of X total pages","required":false,"schema":{"type":"integer"}},{"name":"from_date","in":"query","description":"Starting date (required if duration specified as <i>custom_date_range<\/i>)\n","required":false,"schema":{"type":"string"}},{"name":"to_date","in":"query","description":"End date (required if duration specified as <i>custom_date_range<\/i>)\n","required":false,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"Employee ID":{"type":"integer","description":"Employee ID","example":100},"Employee":{"type":"string","description":"Employee name","example":"John Doe"},"Operation":{"type":"string","description":"Operation name","example":"Brisbane Operation A"},"Position ID":{"type":"integer","description":"Position ID","example":13},"Position Label":{"type":"string","description":"Position label","example":"Level 4 Staff"},"Type":{"type":"string","description":"Reason type","enum":["Attendance","Performance","Termination"]},"Reason":{"type":"string","description":"Reason label","enum":["Termination","Called in Sick ","No Show","Resigned","Dismissed"]},"Date":{"type":"string","description":"Recorded event date","example":"2026-06-01"},"Comment":{"type":"string","description":"Recorded event comment","example":"Sick child"},"Authoriser":{"type":"string","description":"Recorded event authoriser (admin) name","example":"John Doe"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/workforce-report-centre\/visa-check-list":{"get":{"tags":["Workforce Reporting"],"summary":"Visa Check List Report","operationId":"api_v2_workforce-report-centre_visa-check-list_GET","parameters":[{"name":"filter_employee_ids","in":"query","description":"Filter results by employee Ids (array)\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_granted_to","in":"query","description":"Filter results by visa granted date (up to)\n","required":false,"schema":{"type":"string"}},{"name":"option_has_conditions","in":"query","description":"Select only entries with conditions\n","required":false,"schema":{"type":"boolean"}},{"name":"page","in":"query","description":"Set the page number to be returned for this request out of X total pages","required":false,"schema":{"type":"integer"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 500 per page.","required":false,"schema":{"type":"integer"}},{"name":"filter_employee_status","in":"query","description":"Filter results by employee status (array)\n","required":false,"schema":{"type":"array of strings","enum":["Approved","Archived","Declined","Pending"]}},{"name":"filter_paid_to","in":"query","description":"Filter results by payslip week-ending date (up to)\n","required":false,"schema":{"type":"string"}},{"name":"filter_paid_from","in":"query","description":"Filter results by payslip week-ending date (from)\n","required":false,"schema":{"type":"string"}},{"name":"filter_last_checked_to","in":"query","description":"Filter results by visa last checked date (up to)\n","required":false,"schema":{"type":"string"}},{"name":"filter_last_checked_from","in":"query","description":"Filter results by visa last checked date from\n","required":false,"schema":{"type":"string"}},{"name":"filter_expired_to","in":"query","description":"Filter results by visa expiry date (up to)\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_codes","in":"query","description":"Filter results by office codes (array)\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_expired_from","in":"query","description":"Filter results by visa expiry date (from)\n","required":false,"schema":{"type":"string"}},{"name":"filter_granted_from","in":"query","description":"Filter results by date visa granted from\n","required":false,"schema":{"type":"string"}},{"name":"filter_visa_type","in":"query","description":"Filter results by visa type (array)\n","required":false,"schema":{"type":"array of strings"}},{"name":"filter_eligibility","in":"query","description":"Filter results by eligibility\n","required":false,"schema":{"type":"string","enum":["Eligible for Check","Not Eligible for Check","Errors with Check"]}},{"name":"filter_visa_subclass","in":"query","description":"Filter results by visa subclass (array)\n","required":false,"schema":{"type":"array of strings"}},{"name":"filter_visa_class","in":"query","description":"Filter results by visa class (array)\n","required":false,"schema":{"type":"array of strings"}},{"name":"filter_visa_status","in":"query","description":"Filter results by visa status (array)\n","required":false,"schema":{"type":"array of strings"}},{"name":"filter_operations","in":"query","description":"Filter results by operation IDs (array)\n","required":false,"schema":{"type":"array of integers"}},{"name":"option_has_errors","in":"query","description":"Select only entries that have errors\n","required":false,"schema":{"type":"boolean"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"ID":{"type":"string","description":"ID of the employee","example":"100"},"Full Name":{"type":"string","description":"Employee full name","example":"John Doe"},"Office":{"type":"string","description":"Office code label associated with employee","example":"Brisbane branch"},"Operation":{"type":"string","description":"Operation trade name","example":"Sunburst Pty. Ltd"},"Eligibility":{"type":"string","description":"Eligibility label of employee visa","enum":["Eligible for Check","Not Eligible for Check","Errors with Check"]},"Last Checked":{"type":"string","description":"Last checked date of employee visa","example":"01\/06\/2026"},"Status":{"type":"string","description":"Status label of employee visa","enum":[]},"Type":{"type":"string","description":"Visa type","enum":[]},"Class":{"type":"string","description":"Visa class","enum":[]},"Subclass":{"type":"string","description":"Visa subclass","enum":[]},"Granted":{"type":"string","description":"Visa grant date","example":"01\/06\/2026"},"Expiry":{"type":"string","description":"Visa expiry date","example":"01\/06\/2026"},"Conditions":{"type":"string","description":"Visa conditions","example":"8067:8067 - Must only work in nominated occupation :..."},"Errors":{"type":"string","description":"Error message returned from VEVO","example":"VEVO has not identified a visa for this person. They must hold a valid visa for the duration of their stay and comply with conditions attached to their visa."},"Highlight":{"type":"string","description":"Colour code for highlighting front-end data. \n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>green<\/td><td>Visa is accepted and not expired<\/td><\/tr><tr><td>grey<\/td><td>Not yet tested<\/td><\/tr><tr><td>yellow<\/td><td>Limited working condition<\/td><\/tr><tr><td>red<\/td><td>Errors<\/td><\/tr><\/table>","enum":[["green","grey","yellow","red"]]}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/financial-report-centre\/labour-management":{"get":{"tags":["Financial Reporting"],"summary":"Labour Management Report","operationId":"api_v2_financial-report-centre_labour-management_GET","parameters":[{"name":"duration_custom_range","in":"query","description":"Start and end dates in Y-m-d format, separated by comma or array. Required if duration_specific_date is not present\n","required":true,"schema":{"type":"string"}},{"name":"duration_specific_date","in":"query","description":"Specific date in Y-m-d format. Required if duration_custom_range is not present\n","required":true,"schema":{"type":"string"}},{"name":"group_by","in":"query","description":"Grouping results by specific keywords - comma-separated or array\n(keywords: times, month, period_end, employee_id, operation_id, position_id, date, day, cost_code, shift_id)\n","required":true,"schema":{"type":"string"}},{"name":"filter_employee_ids","in":"query","description":"Filter by employee IDs (comma-separated or array of integers)\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_codes","in":"query","description":"Filter by office codes (comma-separated or array of integers)\n","required":false,"schema":{"type":"string"}},{"name":"filter_cost_codes","in":"query","description":"Filter by cost codes or purchase orders (comma-separated or array of strings)\n","required":false,"schema":{"type":"string"}},{"name":"filter_operation_ids","in":"query","description":"Filter by operation IDs (comma-separated or array of integers)\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 3000 per page.","required":false,"schema":{"type":"integer"}},{"name":"page","in":"query","description":"Set the page number to be returned for this request out of X total pages","required":false,"schema":{"type":"integer"}},{"name":"option_paid_only","in":"query","description":"Include only shifts that have been paid\n","required":false,"schema":{"type":"boolean"}},{"name":"option_allowance_breakdown","in":"query","description":"Show allowance totals by type\n","required":false,"schema":{"type":"boolean"}},{"name":"option_approved_only","in":"query","description":"Show data for shifts that have been approved\n","required":false,"schema":{"type":"boolean"}},{"name":"option_include_no_pay","in":"query","description":"Position built under no-pay awards will be included in the results\n","required":false,"schema":{"type":"boolean"}},{"name":"option_shift_breakdown","in":"query","description":"Show rate breakdown for each shift by Ordinary (OTE) and Overtime (OT)\n","required":false,"schema":{"type":"boolean"}},{"name":"option_charge_out","in":"query","description":"Show charge out rates for each shift\n","required":false,"schema":{"type":"boolean"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation<p><b>Please Note: This sample data is the default output for grouping by \"times\". Grouping with combination of other values will change the response fields returned.<\/b><\/p>","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"Shift Start":{"type":"string","description":"Shift start time (Last result item exclude this)","example":"20:00"},"Shift End":{"type":"string","description":"Shift end time (Last result item exclude this)","example":"02:00"},"Rostered Shift ID":{"type":"number","description":"Rostered Shift ID (API only, when group_by includes 'shift_id')","example":"12436"},"Unpaid Break":{"type":"string","description":"Unpaid break time in decimal format (Last result item is total of all unpaid break time)","example":"0.50"},"Total Hours":{"type":"string","description":"Total shift hours (Last result item is total of all total hours)","example":"3.00"},"Total Hours Standard":{"type":"string","description":"Total standard shift hours (Last result item is total of all total hours standard)","example":"3.00"},"Total Pay Standard":{"type":"string","description":"Pay amount for standard shift hours (Last result item is total of all total pay standard)","example":"300.25"},"Total Hours Overtime":{"type":"string","description":"Total overtime shift hours (Last result item is total of all total hours overtime)","example":"5.50"},"Total Pay Overtime":{"type":"string","description":"Pay amount for overtime shift hours (Last result item is total of all total pay overtime)","example":"50.75"},"Taxable Allowance Paid":{"type":"string","description":"Taxable allowance paid for the current shift (Last result item is total of all taxable allowance paid","example":"4.59"},"Non-Taxable Allowance Paid":{"type":"string","description":"Non-taxable allowance paid for the current shift (Last result item is total of all non-taxable allowance paid)","example":"1.50"},"Total Pay":{"type":"string","description":"Total pay for current shift (Last result item is total of all total pay)","example":"99.84"},"Charge Out Standard":{"type":"string","description":"Charge out rate for ordinary hours (API only; 'option_charge_out' set to true)","example":"310.00"},"Charge Out Overtime":{"type":"string","description":"Charge out rate for overtime hours (API only; 'option_charge_out' set to true)","example":"50.00"},"Taxable Allowance Charge":{"type":"string","description":"Charge out rate for taxable allowance (API only; 'option_taxable' set to true)","example":"1.50"},"Non-Taxable Allowance Charge":{"type":"string","description":"Charge out rate for non-taxable allowance (API only; 'option_taxable' set to true)","example":"27.50"},"Total Charge Out":{"type":"string","description":"Total charge out for current shift (API only; 'option_charge_out' set to true)","example":"2500.00"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/financial-report-centre\/processed-deductions":{"get":{"tags":["Financial Reporting"],"summary":"Processed Deductions Report","operationId":"api_v2_financial-report-centre_processed-deductions_GET","parameters":[{"name":"group_by","in":"query","description":"Grouping results by specific keywords\n","required":true,"schema":{"type":"array of strings","enum":["month","payslip_id","employee_id","office_code_id","reference","external_reference","deduction_type","period_end","batch"]}},{"name":"duration","in":"query","description":"Specify duration to extract your data\n","required":true,"schema":{"type":"string","enum":["custom_date_range","this_month","last_month","last_week","last_30_days","last_90_days","last_120_days","this_financial_year","last_financial_year","all"]}},{"name":"filter_employee_ids","in":"query","description":"Filter by employee IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_operation_ids","in":"query","description":"Filter by operations IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_office_codes","in":"query","description":"Filter by office code IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_specific_deductions","in":"query","description":"Filter by deduction code IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_batches","in":"query","description":"Filter by payment batch IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}},{"name":"page","in":"query","description":"Set the page number to be returned for this request out of X total pages","required":false,"schema":{"type":"integer"}},{"name":"from_date","in":"query","description":"Starting date (required if duration specified as <i>custom_date_range<\/i>)\n","required":false,"schema":{"type":"string"}},{"name":"to_date","in":"query","description":"End date (required if duration specified as <i>custom_date_range<\/i>)\n","required":false,"schema":{"type":"string"}},{"name":"option_cash_basis","in":"query","description":"View your pay dates based on when payment was made, instead of period end date\n","required":false,"schema":{"type":"boolean","enum":[0,1]}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation<p><b>Please Note: This explains all possible items that can be returned by this endpoint. Different <i>group_by<\/i> parameter will return different combinations of values.<\/b><\/p>","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"Employee ID":{"type":"integer","description":"Employee ID","example":14},"Employee":{"type":"string","description":"Employee name","example":"John Doe"},"Operation ID":{"type":"integer","description":"Operation ID","example":20},"Operation":{"type":"string","description":"Operation name","example":"Brisbane Operation"},"Office Code ID":{"type":"integer","description":"Office code ID","example":5},"Office Code":{"type":"string","description":"Office code name","example":"Company A Limited"},"Reference":{"type":"string","description":"Reference to the deduction","example":"Winter expenses"},"Comments":{"type":"string","description":"Comments related to deduction","example":"One-off expense"},"Payslip ID":{"type":"integer","description":"Payslip ID","example":10504},"External Reference":{"type":"string","description":"External reference related to deduction","example":"Uniform deposit"},"Deduction Type":{"type":"string","description":"Deduction type","example":"Professional fee"},"Period End":{"type":"string","description":"Period end \/ week ending","example":"2026-06-01"},"Batch ID":{"type":"integer","description":"Payment batch ID","example":20},"Batch":{"type":"string","description":"Payment batch label","example":"Pay run #129"},"Total Paid":{"type":"string","description":"Total paid (Last result item is total of all \"Total Paid\")","example":"12050.59"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/financial-report-centre\/unprocessed-deductions":{"get":{"tags":["Financial Reporting"],"summary":"Unprocessed Deductions Report","operationId":"api_v2_financial-report-centre_unprocessed-deductions_GET","parameters":[{"name":"filter_employee_ids","in":"query","description":"Filter by employee IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_office_codes","in":"query","description":"Filter by office code IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_specific_deductions","in":"query","description":"Filter by deduction type IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}},{"name":"page","in":"query","description":"Set the page number to be returned for this request out of X total pages","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"Employee ID":{"type":"integer","description":"Employee ID","example":100},"Employee":{"type":"string","description":"Employee name","example":"John Doe"},"Office Code ID":{"type":"integer","description":"Office Code ID","example":20},"Office Code":{"type":"string","description":"Office code label","example":"Brisbane Office"},"Remaining To Pay":{"type":"string","description":"Remaining amount of deduction to pay","example":"52.50"},"week end":{"type":"string","description":"Period ending \/ week ending associated with deduction","example":"2026-06-01"},"Recurring Till":{"type":"string","description":"Expected end date of deduction","example":"2026-06-01"},"Per Cycle":{"type":"string","description":"Deduction amount per payment cycle","example":"52.50"},"Amount":{"type":"string","description":"Total amount of deduction","example":"652.50"},"Deduction Type":{"type":"string","description":"Deduction type label","example":"Uniform Fee"},"Reference":{"type":"string","description":"Reference to the deduction","example":"Uniform Deposit"},"External Reference":{"type":"string","description":"External reference to the deduction","example":"Uniform Deposit from Xero"},"Comments":{"type":"string","description":"Comments related to the deduction","example":"Contact Julie for more info"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/financial-report-centre\/reimbursements":{"get":{"tags":["Financial Reporting"],"summary":"Reimbursement Report","operationId":"api_v2_financial-report-centre_reimbursements_GET","parameters":[{"name":"group_by","in":"query","description":"Grouping results by specific keywords\n","required":true,"schema":{"type":"array of strings","enum":["batch_id","employee_id","office_code_id","operation_id","pay_period","reimbursement","cost_code"]}},{"name":"duration","in":"query","description":"Specify duration to extract your data\n","required":true,"schema":{"type":"string","enum":["custom_date_range","this_month","last_month","last_week","last_30_days","last_90_days","last_120_days","this_financial_year","last_financial_year","all"]}},{"name":"filter_employee_ids","in":"query","description":"Filter by employee IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_operation_ids","in":"query","description":"Filter results by operation IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_office_codes","in":"query","description":"Filter results by office code IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_reimbursement_types","in":"query","description":"Filter results by reimbursement types\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_reimbursement_status","in":"query","description":"Filter results by reimbursement status\n","required":false,"schema":{"type":"array of strings","enum":["approved","paid"]}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}},{"name":"page","in":"query","description":"Set the page number to be returned for this request out of X total pages","required":false,"schema":{"type":"integer"}},{"name":"from_date","in":"query","description":"Starting date (required if duration specified as <i>custom_date_range<\/i>)\n","required":false,"schema":{"type":"string"}},{"name":"to_date","in":"query","description":"End date (required if duration specified as <i>custom_date_range<\/i>)\n","required":false,"schema":{"type":"string"}},{"name":"option_split_and_show_details","in":"query","description":"Show status, submitted date, pay date, pay period and comments in results\n","required":false,"schema":{"type":"boolean","enum":[0,1]}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation<p><b>Please Note: This explains all possible values that can be returned by this endpoint. Different <i>group_by<\/i> parameter will return different set of values.<\/b><\/p>","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"Employee ID":{"type":"integer","description":"Employee ID","example":20},"Employee":{"type":"string","description":"Employee name","example":"John Doe"},"Office Code ID":{"type":"integer","description":"Office code ID","example":8},"Office Code":{"type":"string","description":"Office code label","example":"Brisbane Office"},"Operation ID":{"type":"integer","description":"Operation ID","example":5},"Operation Label":{"type":"string","description":"Operation label","example":"Sydney - Manly"},"Pay Period":{"type":"string","description":"Pay period (week ending)","example":"31\/05\/2026"},"Cost code":{"type":"string","description":"Cost code label","example":"PO-001"},"Reimbursement":{"type":"string","description":"Reimbursement label","example":"Phone Expense"},"Reimbursement Submitted":{"type":"string","description":"Date when reimbursement submitted","example":"31\/05\/2026"},"Batch ID":{"type":"integer","description":"Batch ID from payslip","example":20},"Status":{"type":"string","description":"Reimbursement status","enum":["Accepted","Paid"]},"Attachment":{"type":"string","description":"File attachment connected to the reimbursement","example":"https:\/\/example.com\/my-file"},"Payment date":{"type":"string","description":"Reimbursement payment date","example":"31\/05\/2026"},"Amount":{"type":"string","description":"Reimbursement amount","example":"$50.00"},"GST":{"type":"string","description":"Reimbursement GST","example":"$5.00"},"Total Amount":{"type":"string","description":"Total reimbursement amount","example":"$55.00"},"Comments":{"type":"string","description":"Comment attached to the reimbursement","example":"Mobile phone reimbursement"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/financial-report-centre\/advanced-payroll-activity":{"get":{"tags":["Financial Reporting"],"summary":"Advanced Payroll Activity Report","operationId":"api_v2_financial-report-centre_advanced-payroll-activity_GET","parameters":[{"name":"duration","in":"query","description":"Specify duration to extract your data\n","required":true,"schema":{"type":"string","enum":["custom_date_range","this_month","last_month","last_week","last_30_days","last_90_days","last_120_days","this_financial_year","last_financial_year","all"]}},{"name":"group_by","in":"query","description":"Grouping results by specific keyword(s)\n","required":true,"schema":{"type":"array of strings","enum":["batch_id","batch_label","employee_id","employment_type","income_type","line_item","month","office_code","operation","operation_office_code","paying_entity","payment_date","payroll_tax_state","payslip","period_end","position","state","workcover_code","cost_code"]}},{"name":"filter_employee_ids","in":"query","description":"Filter results by employee IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}},{"name":"option_display_non_reported_stp_amount_separately","in":"query","description":"Display non-reported STP amounts, when set\n","required":false,"schema":{"type":"boolean"}},{"name":"option_separate_super_contribution_types","in":"query","description":"Show super contribution types \/ sources\n","required":false,"schema":{"type":"boolean"}},{"name":"option_show_abn","in":"query","description":"Show ABN in `office code` column if grouped by office code\n","required":false,"schema":{"type":"boolean"}},{"name":"option_split_deductions","in":"query","description":"Split deductions?\n","required":false,"schema":{"type":"boolean"}},{"name":"option_cash_basis","in":"query","description":"View pay dates based on when payment was made instead of period end date.\n","required":false,"schema":{"type":"boolean"}},{"name":"page","in":"query","description":"Set the page number to be returned for this request out of X total pages","required":false,"schema":{"type":"integer"}},{"name":"filter_purchase_orders","in":"query","description":"Filter results by purchase orders (or cost code, depending on system settings)\n","required":false,"schema":{"type":"array of strings"}},{"name":"filter_employment_types","in":"query","description":"Filter results by employment types\n\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Full Time<\/td><\/tr><tr><td>1<\/td><td>Part Time<\/td><\/tr><tr><td>2<\/td><td>Casual<\/td><\/tr><\/table>","required":false,"schema":{"type":"array of strings"}},{"name":"filter_batches","in":"query","description":"Filter results by batch IDs (only valid when Batches are enabled).\n","required":false,"schema":{"type":"string"}},{"name":"filter_hide_columns","in":"query","description":"Hide columns on results\n","required":false,"schema":{"type":"array of strings","enum":["week_end","paycycle_id","type","state_name","label","batch_id","batch_label","operation_office_code_name","operation_id","operation_name","employment_type","employee_id","employee_name","workcover_code","payroll_tax_id","payroll_tax_name","purchase_order","office_code_id","office_code_name","month_id","operation_company_name","operation_office_code_id","paying_entity","position_id","position_name","income_type","country_code","hours","gross","ta","deduction","gross_deduction","tax","nta","net","net_deduction","super","super_guarantee","super_contribution","employee_super_contribution","employer_super_contribution","reimbursement","total_payment","work_cover_applicable_amount","work_cover_rate","work_cover_amount","manual_wc_calculation","wc_diff","payroll_tax_applicable_amount","payroll_tax_rate","payroll_tax_amount","state_id","manual_prt_calculation","prt_diff","total_non_reportable_allowances","total_non_reportable_deductions","payment_date","taxable_total"]}},{"name":"filter_payroll_tax_states","in":"query","description":"Filter results by payroll tax states\n\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Queensland<\/td><\/tr><tr><td>2<\/td><td>Australian Capital Territory<\/td><\/tr><tr><td>3<\/td><td>New South Wales<\/td><\/tr><tr><td>4<\/td><td>Victoria<\/td><\/tr><tr><td>5<\/td><td>Tasmania<\/td><\/tr><tr><td>6<\/td><td>South Australia<\/td><\/tr><tr><td>7<\/td><td>Western Australia<\/td><\/tr><tr><td>8<\/td><td>Northern Territory\t<\/td><\/tr><\/table>","required":false,"schema":{"type":"array of integers"}},{"name":"filter_states","in":"query","description":"Filter results by state IDs\n\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Australian Capital Territory<\/td><\/tr><tr><td>2<\/td><td>New South Wales<\/td><\/tr><tr><td>3<\/td><td>Northern Territory\t<\/td><\/tr><tr><td>4<\/td><td>Queensland<\/td><\/tr><tr><td>5<\/td><td>South Australia<\/td><\/tr><tr><td>6<\/td><td>Tasmania<\/td><\/tr><tr><td>7<\/td><td>Victoria<\/td><\/tr><tr><td>8<\/td><td>Western Australia<\/td><\/tr><\/table>","required":false,"schema":{"type":"array of integers"}},{"name":"filter_income_types","in":"query","description":"Filter results by income types\n","required":false,"schema":{"type":"array of strings","enum":["fei","whm","saw"]}},{"name":"filter_paying_entities","in":"query","description":"Filter results by paying entities\n","required":false,"schema":{"type":"array of strings"}},{"name":"filter_office_codes","in":"query","description":"Filter results by office code IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"filter_operation_ids","in":"query","description":"Filter results by operation IDs\n","required":false,"schema":{"type":"array of integers"}},{"name":"option_show_salaried_only","in":"query","description":"Show salaried employees only\n","required":false,"schema":{"type":"boolean"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation<p><b>Please Note: Field combinations change depend on grouping and filtering. Last entry is the total amount of all records<\/b><\/p>","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"Employee ID":{"type":"integer","description":"Employee ID","example":100},"Employee":{"type":"string","description":"Employee name","example":"John Doe"},"Batch ID":{"type":"integer","description":"Payment batch ID","example":100},"Batch Label":{"type":"string","description":"Payment batch Label","example":"Payment - 2026-06-01"},"Employment Type":{"type":"string","description":"Employment types\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Full Time<\/td><\/tr><tr><td>1<\/td><td>Part Time<\/td><\/tr><tr><td>2<\/td><td>Casual<\/td><\/tr><\/table>","enum":[0,1,2]},"Operation ID":{"type":"integer","description":"Operation ID","example":100},"Income Type":{"type":"string","description":"Income type associated with employee \n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>FEI<\/td><td>Foreign employment income<\/td><\/tr><tr><td>WHM<\/td><td>Working holiday maker<\/td><\/tr><tr><td>SAW<\/td><td>Salary and wages<\/td><\/tr><\/table>","enum":["fei","whm","saw"]},"Line Item":{"type":"string","description":"Specific line item label for report entry, when grouped by \"Line Item\"","example":"Back Pay"},"Month":{"type":"string","description":"Specific month and year label for report entry, when grouped by \"Month\"","example":"June - 2026"},"Office Code":{"type":"string","description":"Office code label grouping for report entry, when grouped by \"Office Code\"","example":"Brisbane Hotel"},"Operation Trade Name":{"type":"string","description":"Operation trade name grouping for report entry, when grouped by \"Operation\"","example":"Brisbane Hotel"},"Operation Office Code Name":{"type":"string","description":"Operation office code name for report entry, when grouped by \"Operation Office Code\"","example":"Brisbane Hotel"},"Paying Entity":{"type":"string","description":"Paying entity label grouping for report entry, when grouped by \"Paying Entity\"","example":"Brisbane Trading Company Pty Ltd"},"Payment Date":{"type":"string","description":"Payment date grouping for report entry, when grouped by \"Payment Date\"","example":"2026-06-01"},"State":{"type":"string","description":"State name grouping for report entry, when grouped by \"State\"","example":"New South Wales"},"Payroll Tax State":{"type":"string","description":"Payroll tax state grouping for report entry, when grouped by \"Payroll Tax State\"","example":"NSW"},"Payslip":{"type":"integer","description":"Paycycle id grouping for report entry, when grouped by \"Payslip\"","example":24100},"Type":{"type":"string","description":"Payslip type for report entry, when grouped by \"Payslip\"","enum":["PAYSLIP","ETP"]},"Period End":{"type":"string","description":"Period end per record entry, when grouped by \"Period End\"","example":"2026-05-31"},"Position":{"type":"integer","description":"Position ID grouping for report entry, when grouped by \"Position\"","example":56},"Position Name":{"type":"string","description":"Position label for report entry, when grouped by \"Position\"","example":"Store Attendant Level 2"},"Cost code":{"type":"string","description":"Cost code grouping for report entry, when grouped by \"Cost code\"","example":"Paid Parental Leave PO"},"Workcover Code":{"type":"string","description":"Workcover id grouping for report entry, when grouped by \"Workcover Code\"","example":"4"},"Total Hours":{"type":"string","description":"Total hours worked for report entry","example":"167.50"},"Gross Wages":{"type":"string","description":"Gross wages amount for report entry","example":"2540.55"},"Taxable Allowances":{"type":"string","description":"Taxable allowances amount for report entry","example":"124.75"},"Deduction":{"type":"string","description":"Total deduction amount for report entry","example":"65.00"},"Gross Deduction":{"type":"string","description":"Gross deduction amount for report entry, when \"option_split_deductions\" is set","example":"65.00"},"Net Deduction":{"type":"string","description":"Net deduction amount for report entry, when \"option_split_deductions\" is set","example":"55.00"},"PAYG Withholding":{"type":"string","description":"PAYG Withholding amount for report entry","example":"5400.34"},"Non-Taxable Allowances":{"type":"string","description":"Non-taxable allowances amount for report entry","example":"125.78"},"Net Pay":{"type":"string","description":"Net pay amount for report entry","example":"4120.56"},"Superannuation":{"type":"string","description":"Superannuation amount for report entry","example":"8675.45"},"Super Guarantee":{"type":"string","description":"Superannuation guaranteed amount, when \"option_separate_super_contribution_types\" is set","example":"8675.45"},"Salary Sacrifice":{"type":"string","description":"Salary Sacrifice amount toward superannuation, when \"option_separate_super_contribution_types\" is set","example":"1675.45"},"Employee Personal Super Contribution":{"type":"string","description":"Employee personal super contribution amount, when \"option_separate_super_contribution_types\" is set","example":"250.00"},"Employer Additional Super Contribution":{"type":"string","description":"Employer additional super contribution amount, when \"option_separate_super_contribution_types\" is set","example":"350.00"},"Reimbursement":{"type":"string","description":"Reimbursement amount for report entry","example":"124.54"},"Total Payment":{"type":"string","description":"Total payment amount for report entry","example":"12345.55"},"Workcover Amount":{"type":"string","description":"Workcover amount for report entry","example":"123.89"},"Payroll Tax Amount":{"type":"string","description":"Payroll tax amount for report entry","example":"9.40"},"Non-STP Reported Total":{"type":"string","description":"Non-STP reported total amount, when \"option_display_non_reported_stp_amount_separately\" is set","example":"123.89"},"Non-STP Reported Deductions":{"type":"string","description":"Non-STP reported deduction amount, when \"option_display_non_reported_stp_amount_separately\" is set","example":"65.00"},"Taxable Total":{"type":"string","description":"Taxable total amount for report entry","example":"50324.44"}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees":{"get":{"tags":["Employees"],"summary":"Search for employees","operationId":"api_v2_employees_GET","parameters":[{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"tag,comment,employee-app-settings,employee-status,employee-client-exclusive,employee-employment-details,employee-go-1,employee-contact,emergency-contact,onboarding-overview,employment-status-history,office-code,current-associated-operation,current-associated-location,current-positions,employee-state-suburb,employee-employment-type-start-date,employee-last-worked-date,employee-registration-progress,employee-go1-id,employee-go1-assigned-courses,employee-stp-compliance,employee-cessation,current-medical,hr-details,custom-fields"}},{"name":"order","in":"query","description":"Order results with field:direction notation. Eg. id:asc or id:desc. Order by id, email, status, suburb, name, created_at\nadded new fields officeCodeLabel, employmentType, incomeType, compliance for Stp phase 2 migration.","required":false,"schema":{"type":"string"}},{"name":"filter","in":"query","description":"The primary search function for finding employees. Will filter via name, email, phone number and ID\n","required":false,"schema":{"type":"string"}},{"name":"filter_status","in":"query","description":"Filters the list to the status of the employee.\nApproved - Employee is through onboarding and ready to work.\nUnverified - Employee is onboarding and cannot be placed to work yet.\nArchived - Employee is currently archived.\nDeclined - Employee has been rejected.\nApproved-and-Archived - Employee is approved or was approved but now archived.\n","required":false,"schema":{"type":"string"}},{"name":"filter_payable","in":"query","description":"Filter employees to make ensure we have enough financial details to pay them\n","required":false,"schema":{"type":"string"}},{"name":"filter_age","in":"query","description":"Filter by the age of the employee one of: under_18, over_18, no_record\n","required":false,"schema":{"type":"string"}},{"name":"filter_is_awaiting_tfn","in":"query","description":"Descriptions of 'tfn_other' values.\nnil => TFN Number provided.\n1 => I have made a seperate application\/enquiry to the ATO for a new or existing TFN. Set TFN to 0.\n3 => I am claiming an exemption because I am under 18 years of age and do not earn enough to pay tax. Set TFN to 0.\n4 => I am claiming an exemption because I am in receipt of a pension, benefit or allowance. Set TFN to 0.\n","required":false,"schema":{"type":"string"}},{"name":"filter_by_id","in":"query","description":"Filter by a csv of ids eg. 10,12,15\n","required":false,"schema":{"type":"string"}},{"name":"filter_tags_in","in":"query","description":"Filter via csv of tag ids eg. 1,2,4.\nUse in conjunction with filter_tags_in_options=and|or to further refine the list\n","required":false,"schema":{"type":"string"}},{"name":"filter_tags_not_in","in":"query","description":"Filter where employees do not have tag ids eg. 1,2,4.\nUse in conjunction with filter_tags_not_in_options=and|or to further refine the list\n","required":false,"schema":{"type":"string"}},{"name":"filter_location","in":"query","description":"Filter employees via whether they can work in the locations provided. CSV of location IDs required eg. 1,2,5\n","required":false,"schema":{"type":"string"}},{"name":"filter_work_states","in":"query","description":"Filter employees via a CSV of states that they can work in. Eg. 1,4,7\n","required":false,"schema":{"type":"string"}},{"name":"filter_home_states","in":"query","description":"Filter employees via their home state entered in their address. Eg. 1,3,5\n","required":false,"schema":{"type":"string"}},{"name":"filter_gender","in":"query","description":"Filter employees via gender, eg. male|female","required":false,"schema":{"type":"string"}},{"name":"filter_qualifications","in":"query","description":"Filter employees via CSV of qualifications. Eg. 6,10,60\n","required":false,"schema":{"type":"string"}},{"name":"filter_registered_from","in":"query","description":"Filter employees by whether they have registered after a certain date. Eg 2020-05-10 10:00:00\n","required":false,"schema":{"type":"string"}},{"name":"filter_commenced_at","in":"query","description":"Filter results from commencement date >= timestamp. Eg 2020-05-10 10:00:00\n","required":false,"schema":{"type":"string"}},{"name":"filter_has_processed_paycycles","in":"query","description":"Filter any (regardless of their status) employees who has at least a processed paycycle\n","required":false,"schema":{"type":"string"}},{"name":"filter_operation_ids","in":"query","description":"Filter results based on the operation selected. Eg operationA, operationB\n","required":false,"schema":{"type":"string"}},{"name":"filter_managers","in":"query","description":"Filters list by CSV of manager IDs\n","required":false,"schema":{"type":"string"}},{"name":"filter_suburbs","in":"query","description":"Filters list by string CSV of suburb names\n","required":false,"schema":{"type":"string"}},{"name":"filter_ids","in":"query","description":"Filter by a CSV of employee IDs\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_code","in":"query","description":"Filter by office code ID\n","required":false,"schema":{"type":"string"}},{"name":"filter_employment_types","in":"query","description":"Filter by a CSV of employment types, full, part, casual, no_pos\n\n","required":false,"schema":{"type":"string"}},{"name":"filter_other","in":"query","description":"Filter on a CSV of various flags.\nhas_valid_coal_board\nis_indigenous\nhas_job_seeker\nwith_blue_card\nwithout_blue_card\npending_blue_card\nhas_payslips_for_current_fy\nhas_special_condition\non_workcover\nhas_employment_restriction\n","required":false,"schema":{"type":"string"}},{"name":"filter_has_job_seeker","in":"query","description":"Filters employees by those flagged for job seeker\n","required":false,"schema":{"type":"string"}},{"name":"filter_languages","in":"query","description":"Filter employees by languages spoken using language codes from ISO 639-2\n","required":false,"schema":{"type":"string"}},{"name":"filter_has_clock_pass_code_set","in":"query","description":"Filter employees to a list who has a clock pass code set\n","required":false,"schema":{"type":"string"}},{"name":"filter_has_clock_pass_code_not_set","in":"query","description":"Filter employees to a list who do not have a clock pass code set\n","required":false,"schema":{"type":"string"}},{"name":"filter_suspend_status","in":"query","description":"filter data based in `employment suspended` flag\n","required":false,"schema":{"type":"string"}},{"name":"filter_ignored_ids","in":"query","description":"Ignores specific employees from the data-set\n","required":false,"schema":{"type":"string"}},{"name":"filter_record_last_updated_at","in":"query","description":"Filters for records which have 'record_last_updated_at' since the specified timestamp. The format of the timestamp\ninput is 'YYYY-MM-DD HH:mm:ss'\n","required":false,"schema":{"type":"string"}},{"name":"filter_terminated_employees","in":"query","description":"Filters for employee who has been terminated\n","required":false,"schema":{"type":"string"}},{"name":"filter_paid","in":"query","description":"Filters for employee who has been paid\n","required":false,"schema":{"type":"string"}},{"name":"filter_stp_transition","in":"query","description":"Filters for employees who are targeted during the stp transition phase\n","required":false,"schema":{"type":"string"}},{"name":"filter_compliance","in":"query","description":"Filter employees based on\n","required":false,"schema":{"type":"string"}},{"name":"filter_external_id","in":"query","description":"Filter employees based on external id\n","required":false,"schema":{"type":"string"}},{"name":"filter_pwt_operation_ids","in":"query","description":"Filter employee with respect to associated operationIds to the today working shift of that employee\n","required":false,"schema":{"type":"string"}},{"name":"filter_pwt_roster_ids","in":"query","description":"Filter employee with respect to associated rosterIds to the today working shift of that employee\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 2000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#\/components\/schemas\/EmployeeV2Transformer"}},"included":{"type":"object","properties":{"tag-{id}":{"type":"object","$ref":"#\/components\/schemas\/TagTransformer"},"tag-group-{id}":{"type":"object","$ref":"#\/components\/schemas\/TagGroupTransformer"},"comment-{id}":{"type":"object","$ref":"#\/components\/schemas\/CommentTransformer"},"employee-app-settings-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeAppSettingsTransformer"},"employee-status-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeStatusTransformer"},"employee-client-exclusive-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeClientExclusiveTransformer"},"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientV2Transformer"},"employee-employment-details-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmploymentDetailsTransformer"},"employee-go-1-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeGo1Transformer"},"employee-contact-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeContactTransformer"},"emergency-contact-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmergencyContactTransformer"},"onboarding-overview-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeOnboardingOverviewTransformer"},"employment-status-history-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeHistoricalStatusTransformer"},"office-code-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeOfficeCodeTransformer"},"current-associated-operation-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentAssociatedOperationTransformer"},"current-associated-location-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentAssociatedLocationTransformer"},"current-positions-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentPositionsTransformer"},"employee-state-suburb-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeStateSuburbTransformer"},"employee-employment-type-start-date-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmploymentTypeStartDateTransformer"},"employee-last-worked-date-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeLastWorkedTransformer"},"employee-registration-progress-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeRegistrationProgressTransformer"},"employee-go1-id-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeGo1IdTransformer"},"employee-go1-assigned-courses-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeGo1AssignedCoursesTransformer"},"employee-stp-compliance-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeStpComplianceTransformer"},"employee-cessation-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCessationTransformer"},"current-medical-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentMedicalTransformer"},"hr-details-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeHrV2Transformer"},"custom-fields-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCustomFieldsTransformer"}}}}}}}}},"x-hideTryItPanel":true},"post":{"tags":["Employees"],"summary":"Create an employee with basic data in the system","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"first_name":{"description":"The employee's first name.","type":"string","example":"Emily"},"middle_name":{"description":"The employee's middle name.","type":"string","example":"Irene"},"surname":{"description":"The employee's family name.","type":"string","example":"Smith"},"preferred_name":{"description":"Employee's preferred name.","type":"string","example":"Jake Williams"},"mobile":{"description":"Employee mobile number","type":"string","example":"0412345678"},"email":{"description":"Employee email address. This will return a HTTP\/409 if a user is trying to input an existing email address","type":"string","example":"jake@hotmail.com"},"work_email":{"description":"Employee's single sign-on email address. This will return a HTTP\/409 if a user is trying to input an existing email address","type":"string","example":"jake@thecompany.com.au"},"external_id":{"description":"External ID for the employee. Usually set to previous system's ID.","type":"string","example":"5001"},"send_welcome_email":{"type":" boolean","default":1,"description":"Flag to indicate sending welcome email, default to true if not specified\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true, send welcome email<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"is_contractor":{"description":"Flag to indicate if employee is a contractor\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","type":"boolean","enum":[1,0]}}}}},"required":true},"operationId":"api_v2_employees_POST","responses":{"403":{"description":"Not authorised"},"201":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"employee_id":{"type":"int","example":2}}}}}},"409":{"description":"Conflict, existing employee already has email address or external id","content":{"application\/json":{"schema":{"type":"object","properties":{"error":{"type":"boolean","example":true},"message":{"type":"string","description":"Currently this returns a message for a 409 status (conflict) if a request comes to create an employee with an existing email address or an existing external id","enum":["An employee with similar email address already exist in the system","An employee with similar external id already exist in the system"]}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}":{"get":{"tags":["Employees"],"summary":"Get details about an employee by ID","operationId":"api_v2_employees_{id}_GET","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}},{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"tag,comment,employee-app-settings,employee-status,employee-client-exclusive,employee-employment-details,employee-go-1,employee-contact,emergency-contact,onboarding-overview,employment-status-history,office-code,current-associated-operation,current-associated-location,current-positions,employee-state-suburb,employee-employment-type-start-date,employee-last-worked-date,employee-registration-progress,employee-go1-id,employee-go1-assigned-courses,employee-stp-compliance,employee-cessation,current-medical,hr-details,custom-fields"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/EmployeeV2Transformer"},"included":{"type":"object","properties":{"tag-{id}":{"type":"object","$ref":"#\/components\/schemas\/TagTransformer"},"tag-group-{id}":{"type":"object","$ref":"#\/components\/schemas\/TagGroupTransformer"},"comment-{id}":{"type":"object","$ref":"#\/components\/schemas\/CommentTransformer"},"employee-app-settings-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeAppSettingsTransformer"},"employee-status-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeStatusTransformer"},"employee-client-exclusive-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeClientExclusiveTransformer"},"client-{id}":{"type":"object","$ref":"#\/components\/schemas\/ClientV2Transformer"},"employee-employment-details-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmploymentDetailsTransformer"},"employee-go-1-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeGo1Transformer"},"employee-contact-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeContactTransformer"},"emergency-contact-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmergencyContactTransformer"},"onboarding-overview-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeOnboardingOverviewTransformer"},"employment-status-history-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeHistoricalStatusTransformer"},"office-code-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeOfficeCodeTransformer"},"current-associated-operation-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentAssociatedOperationTransformer"},"current-associated-location-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentAssociatedLocationTransformer"},"current-positions-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentPositionsTransformer"},"employee-state-suburb-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeStateSuburbTransformer"},"employee-employment-type-start-date-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeEmploymentTypeStartDateTransformer"},"employee-last-worked-date-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeLastWorkedTransformer"},"employee-registration-progress-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeRegistrationProgressTransformer"},"employee-go1-id-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeGo1IdTransformer"},"employee-go1-assigned-courses-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeGo1AssignedCoursesTransformer"},"employee-stp-compliance-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeStpComplianceTransformer"},"employee-cessation-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCessationTransformer"},"current-medical-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCurrentMedicalTransformer"},"hr-details-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeHrV2Transformer"},"custom-fields-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeCustomFieldsTransformer"}}}}}}}}},"x-hideTryItPanel":true},"post":{"tags":["Employees"],"summary":"Update an employee data","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"external_id":{"description":"External ID for the employee. Usually set to previous system's ID.","type":"string","example":"5001A"},"first_name":{"description":"Employee first name.","type":"string","example":"Emily"},"middle_name":{"description":"Employee middle name.","type":"string","example":"Irene"},"surname":{"description":"Employee family name.","type":"string","example":"Smith"},"preferred_name":{"description":"Employee's preferred name.","type":"string","example":"Emma"},"email":{"description":"Employee email address.","type":"string","example":"emily.smith@hotmail.com"},"work_email":{"description":"Employee single sign-on email address.","type":"string","example":"emily.smith@test.com.au"},"mobile":{"description":"Employee mobile number.","type":"string","example":"0412345678"},"status":{"description":"Employee status within the system","type":"string","enum":["Available","Pending","Declined","Archived"]}}}}},"required":true},"operationId":"api_v2_employees_{id}_POST","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"201":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"employee_id":{"type":"integer","example":41}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/tags":{"get":{"tags":["Employees"],"summary":"Get employee tags","operationId":"api_v2_employees_{id}_tags_GET","parameters":[{"name":"id","in":"path","description":"ID of the employee","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/EmployeeTagsV2Transformer"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/add-tags":{"post":{"tags":["Employees"],"summary":"Add tag Ids to an employee","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"tags":{"type":"array","items":{"type":"object","properties":{"tag_id":{"type":"string","description":"Tag id to be linked to this employee.","example":"7"}}}}}}}},"required":true},"operationId":"api_v2_employees_{id}_add-tags_POST","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"tags_not_found":{"type":"string","description":"Comma-separated string, containing the ids of tags not found (and therefore not added)","example":"17,21"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/remove-tags":{"post":{"tags":["Employees"],"summary":"Remove tag Ids from employee record","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"tags":{"type":"array","items":{"type":"object","properties":{"tag_id":{"type":"string","description":"Tag id to be removed from employee record.","example":"7"}}}}}}}},"required":true},"operationId":"api_v2_employees_{id}_remove-tags_POST","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"tags_not_found":{"type":"string","description":"Comma-separated string, containing the ids of tags not linked to employee","example":"17,21"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/set-tags":{"post":{"tags":["Employees"],"summary":"Set tag Ids to an employee","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"tags":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","description":"Tag label to be linked to this employee)","example":"Masks"},"id":{"type":"string","description":"Tag id to be linked to this employee)","example":"7"}}}}}}}},"required":true},"operationId":"api_v2_employees_{id}_set-tags_POST","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"object","properties":{"label":{"type":"string","description":"Tag label to be linked to this employee)","example":"Masks"},"id":{"type":"string","description":"Tag id to be linked to this employee)","example":"7"}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/hr-details":{"get":{"tags":["Employees"],"summary":"Get employee hr details","operationId":"api_v2_employees_{id}_hr-details_GET","parameters":[{"name":"id","in":"path","description":"ID of the employee","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/EmployeeHrV2Transformer"}}}}}}},"x-hideTryItPanel":true},"post":{"tags":["Employees"],"summary":"Save employee hr details","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"dob":{"description":"The employee's date of birth. Format.","type":"string","example":"1979-03-07"},"address":{"type":"object","properties":{"street":{"type":"string","description":"Employee address street.","example":"123 Eagle street"},"suburb":{"type":"string","description":"Employee address suburb.","example":"Milton"},"state":{"type":"string","description":"Employee address state.","example":"NSW"},"postcode":{"type":"string","description":"Employee address postcode.","example":"4123"}}},"employment_start_date":{"type":"string","description":"Employment start date. Format: Y-m-d","example":"1991-01-03"},"income_type_code":{"type":"string","description":"Income type code id","example":"SAW"},"country_of_origin_code":{"type":"string","description":"Country of origin code id","example":"NZ"},"manager":{"type":"integer","description":"Manager id; to get all values, refer to this route: '\/api\/v1\/managers'","example":"12"},"office_code":{"type":"integer","description":"Office code id; to get all values, refer to this route: '\/api\/v1\/office-codes'","example":"3"},"gender":{"type":"enum","description":"Employee gender\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>M<\/td><td>male<\/td><\/tr><tr><td>F<\/td><td>female<\/td><\/tr><tr><td>O<\/td><td>other<\/td><\/tr><tr><td>S<\/td><td>specify term<\/td><\/tr><tr><td>Unknown<\/td><td>unknown<\/td><\/tr><\/table>","enum":["M","F","O","S","Unknown"]},"gender_detail":{"type":"string","description":"Specify gender terminology here (Only required if gender is S)","example":"Asexual"}}}}},"required":true},"operationId":"api_v2_employees_{id}_hr-details_POST","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/compliance-details":{"get":{"tags":["Employees"],"summary":"Get employee compliance details","operationId":"api_v2_employees_{id}_compliance-details_GET","parameters":[{"name":"id","in":"path","description":"ID of the employee","required":true,"schema":{"type":"integer"}},{"name":"include","in":"query","description":"Include related data","required":false,"schema":{"type":"string","example":"employee-qualification,employee-licence,employee-induction"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/EmployeeComplianceV2Transformer"},"included":{"type":"object","properties":{"employee-qualification-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeQualificationExpiryTransformer"},"qualification-settings-{id}":{"type":"object","$ref":"#\/components\/schemas\/JobsQualificationTransformer"},"employee-licence-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeLicenceTransformer"},"employee-induction-{id}":{"type":"object","$ref":"#\/components\/schemas\/EmployeeInductionTransformer"}}}}}}}}},"x-hideTryItPanel":true},"post":{"tags":["Employees"],"summary":"Save employee compliance details","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"visa_right_to_work":{"type":"object","properties":{"visa_status":{"type":"string","description":"Whether or not employee is Australia citizen, Australia resident, New Zealand citizen, Student Visa, or Other Visa.","enum":["citizen","resident","nzcitizen","student","other"]},"visa_type":{"type":"string","description":"Type of Visa.","example":"457"},"visa_date":{"type":"string","description":"Visa expiry date. In Y-m-d format.","example":"2022-07-07"},"visa_passport_number":{"type":"string","description":"Visa number or passport number.","example":"5574369"},"visa_issue_country":{"type":"string","description":"The country that issued the visa in ISO3 country code.","example":"CHL"}}}}}}},"required":true},"operationId":"api_v2_employees_{id}_compliance-details_POST","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/compliance-details\/documents\/{document}":{"get":{"tags":["Employees"],"summary":"Get employee compliance document","operationId":"api_v2_employees_{id}_compliance-details_documents_{document}_GET","parameters":[{"name":"id","in":"path","description":"ID of the employee","required":true,"schema":{"type":"integer"}},{"name":"document","in":"path","description":"Name of the document","required":true,"schema":{"type":"string"}}],"responses":{"403":{"description":"Not authorised"},"404":{"description":"Document not found"},"200":{"description":"A file response"}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/leave-history":{"get":{"tags":["Employees"],"summary":"Returns leave history of an employee","operationId":"api_v2_employees_{id}_leave-history_GET","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}},{"name":"filter_start_date","in":"query","description":"Filters the start date to return items from the starting date onward\n","required":false,"schema":{"type":"string"}},{"name":"filter_type","in":"query","description":"Filters the leave type\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/EmployeeLeaveHistoryTransformer"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/upload-drivers-licence":{"post":{"tags":["Employees"],"summary":"Upload employee's driver's licence file and details.","description":"This route accepts only \"multipart\/form-data\" content type. Accepted file types are png, jpeg, doc, docx, pdf and gif.\nMaximum file size is 2Mb. Accepted states for the licence file are: QLD, NSW, NT, SA, WA, VIC, ACT, TAS or INTERNATIONAL.\n\n","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"uploaded_files":{"type":"array","items":{"description":"File to be uploaded","type":"string","format":"binary"}},"licence_type":{"description":"Type of driver licence","type":"string","enum":["open","provisional","learner"]},"expiry_date":{"type":"string","description":"Expiry date of driver's licence","example":"2026-06-01"},"licence_number":{"type":"string","description":"Driver's licence number","example":"9034659"},"licence_state":{"type":"string","description":"Driver's licence state","enum":["qld","nsw","act","vic","tas","wa","sa","nt","international","QLD","NSW","ACT","VIC","TAS","WA","SA","NT","INTERNATIONAL"]},"overwrite":{"type":"boolean","description":"If set to true, will overwrite existing driver's licence data","enum":[true,false]}}}}},"required":true},"operationId":"api_v2_employees_{id}_upload-drivers-licence_POST","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/upload-credentials":{"post":{"tags":["Employees"],"summary":"Upload employee's credentials (inductions, qualifications or licenses).","description":"This route accepts only \"multipart\/form-data\" content type\n\n","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"uploaded_files":{"type":"array","items":{"description":"File to be uploaded (png,jpeg,doc,docx,pdf,gif) up to 4MB in size","type":"string","format":"binary"}},"type":{"type":"string","description":"Credential type","enum":["qualification","induction","licence"]},"credential_id":{"type":"string","description":"Credential id; for possible values, refer to '\/api\/v1\/qualifications' route","example":"2"},"overwrite":{"type":"boolean","description":"If set to true, will overwrite existing credential with similar 'credential_id'","enum":[true,false]},"assess_or_expiry_date":{"type":"string","description":"Assessment date (in case of induction) or expiry date (in case of licence). For qualifications, please do not supply this field","example":"2026-06-01"},"external_file_url":{"type":"string","description":"External URL pointing to the credentials file","example":"https:\/\/www.test.com.au\/file\/qualifications.pdf"}}}}},"required":true},"operationId":"api_v2_employees_{id}_upload-credentials_POST","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"message":{"type":"string","description":"Error message (if applicable)","example":"Error upload 1 file"}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/financial-details":{"get":{"tags":["Employees"],"summary":"Get financial details for an employee, including bank details, TFN and superannuation","operationId":"api_v2_employees_{id}_financial-details_GET","parameters":[{"name":"id","in":"path","description":"ID of the employee","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#\/components\/schemas\/EmployeeFinancialV2Transformer"}}}}}}},"x-hideTryItPanel":true},"post":{"tags":["Employees"],"summary":"Save employee financial details","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"bank_details":{"type":"object","properties":{"account_name":{"type":"string","description":"Employee bank account name.","example":"John McDoe"},"bsb":{"type":"string","description":"Employee bank account bsb number.","example":"633-000"},"account_number":{"type":"string","description":"Employee bank account number.","example":"1402029458"}}},"additional_bank_details":{"type":"array","items":{"type":"object","properties":{"account_name":{"type":"string","description":"Employee bank account name","example":"John Secondary"},"bsb":{"type":"string","description":"Employee bank account bsb number","example":"031-212"},"account_number":{"type":"string","description":"Employee bank account number","example":"1402029438"},"amount":{"type":"string","description":"The amount to put in this additional account","example":"20"},"amount_type":{"type":"string","description":"Unit type for the amount to be transferred into the bank account. $20 or 20% for example","enum":["$","%"]}}}},"superannuation":{"type":"object","properties":{"type":{"type":"string","description":"Type of employee superannuation account.","enum":["employee_super_account","employer_default_fund","self_managed_super_fund"]},"fund_name":{"type":"string","description":"Superannuation fund name (employee_super_account type only)","example":"HESTA"},"usi":{"type":"string","description":"Unique Superannuation Identifier for the fund (employee_super_account type only)","example":"(USI:HST0100AU)"},"account_id":{"type":"string","description":"Employee superannuation account identifier (employee_super_account type only)","example":"67609490"},"esa":{"type":"string","description":"Electronic Service Address (self_managed_super_fund only)","example":"j doe super fund"},"account_name":{"type":"string","description":"Employee superannuation account name (self_managed_super_fund only)","example":"AUSMAK SUPERANNUATION FUND"},"abn":{"type":"string","description":"Superannuation fund Australian Business Number (self_managed_super_fund only)","example":"50036793473"},"account_number":{"type":"string","description":"Superannuation fund account number (self_managed_super_fund only)","example":"1122545"},"bsb":{"type":"string","description":"Superannuation fund bsb number (self_managed_super_fund only)","example":"033-100"},"super_guarantee":{"type":"numeric","description":"Superannuation guarantee %","example":"9.5"},"minimum_super_guarantee_amount":{"type":"numeric","description":"The minimum amount of super guarantee to be paid on each payslip","example":"100"},"ignore_super_contribution_cap":{"type":"boolean","description":"Flag to ignore super guarantee cap","example":"false"},"salary_sacrifice_amount":{"type":"numeric","description":"Employee salary sacrifice amount","example":"25"},"salary_sacrifice_type":{"type":"string","description":"Employee salary sacrifice type","example":"$","enum":["$","%"]},"employee_personal_super_contribution":{"type":"numeric","description":"Employee personal super contribution","example":"25"},"employer_additional_super_contribution_amount":{"type":"numeric","description":"Employer additional super contribution amount","example":"25"},"employer_additional_super_contribution_type":{"type":"string","description":"Employer additional super contribution type","enum":["$","%"]},"report_employer_super_contribution":{"type":"int","description":"Report employer super contribution to ATO","enum":[-1,0,1]}}},"tax_file_number_declaration":{"type":"object","properties":{"additional_tax":{"type":"numeric","description":"$ amount of additional tax the employee wants to pay on each payslip","example":"25"},"tax_file_number":{"type":"string","description":"Employee tax file number. Please fill '000000000' if employee has provided a reason for exemption.","example":"865414088"},"tfn_exemption_reason":{"type":"string","description":"If employee cannot provide a tax file number, provide a reason why. 'enquiry_to_ato' means Employee has made a separate application\/enquiry to the ATO for a new or existing TFN. 'under_18' means that Employee is claiming an exemption because employee is under 18 years of age and do not earn enough to pay tax. 'pension_benefit_allowance' means that employee is claiming an exemption because employee is in receipt of a pension, benefit or allowance. This field is optional.","enum":["enquiry_to_ato","under_18","pension_benefit_allowance"]},"previous_name_dealing_with_ato":{"type":"string","description":"If employee has changed their name since last dealt with ATO, provide previous name here. This field is optional.","example":"John Old Smith"},"payment_basis":{"type":"string","description":"Employment basis: Full-time employment, part-time employment, labour hire, superannuation or annuity income stream.","enum":["casual","labour_hire","full_time","part_time","superannuation_income"]},"resident_status":{"type":"string","description":"Is employee an Australian resident for tax purposes, foreign resident for tax purposes or a working holiday maker?","enum":["australian_resident","foreign_resident","working_holidaymaker"]},"tax_free_threshold_from_employer":{"type":"string","description":"Is employee claiming tax-free threshold from this employer?","enum":["yes","no"]},"help_vsl_fs_ssl_tsl_debt":{"type":"string","description":"Does employee have a Higher Education Loan Program (HELP), VET Student Loan (VSL), Financial Supplement (FS), Student Start-up Loan (SSL) or Trade Support Loan (TSL) debt?","enum":["yes","no"]}}},"foreign_tax_rate_percent":{"type":"numeric","description":"The foreign tax percentage on the taxable foreign income","example":"25"},"is_labour_hire":{"type":"boolean","description":"Employee is employed as labour hire","example":"false"},"withholding_declaration":{"type":"object","properties":{"claim_vary_tax_offset_by_reducing_amount_withheld":{"type":"string","description":"Does employee want to claim or vary tax offset by reducing the amount withheld from payments made to employee?","enum":["yes","no"]},"tax_offset_amount_withheld":{"type":"string","description":"If answer to 'claim_vary_tax_offset_by_reducing_amount_withheld' is 'yes', specify the amount withheld here (numeric)","example":"20.50"},"claim_vary_seniors_pensioners_tax_offset":{"type":"string","description":"Does employee want to claim or vary seniors and pensioners tax offset entitlement by reducing the amount withheld from payments made to employee?","enum":["yes","no"]},"seniors_pensioners_tax_offset_type":{"type":"string","description":"If answer to 'claim_vary_seniors_pensioners_tax_offset' is 'yes', select condition that apply to employee: Single (single), Member of illness-separated Couple (illness-separated) or Member of a couple (couple)","enum":["no","single","illness-separated","couple"]}}},"medicare_levy_declaration":{"type":"object","properties":{"Q4":{"type":"string","description":"Do you want your payer to increase the amounts withheld from you to cover the Medicare levy surcharge?","enum":["no","1%","1.25%","1.5%"]},"Q5":{"type":"string","description":"Do you qualify for a Medicare levy exemption? If no, go to question 8","enum":["yes","no"]},"Q6":{"type":"string","description":"Do you want to claim a full exemption from the Medicare levy?","enum":["yes","no"]},"Q7":{"type":"string","description":"Do you want to claim a half levy exemption from the Medicare levy? If yes, go to question 9","enum":["yes","no"]},"Q8":{"type":"string","description":"Do you want to claim a Medicare levy reduction? If yes, go to question 9","enum":["yes","no"]},"Q9":{"type":"string","description":"Do you have a dependant spouse? (see definition of spouse on ATO website)","enum":["yes","no"]},"Q10":{"type":"string","description":"Is the combined weekly income of you and your spouse, or your income as a sole parent, less than the relevant amount in Weekly Income table? (see table at https:\/\/www.ato.gov.au\/Rates\/Medicare-levy-adjustment-weekly-tax-table\/)","enum":["yes","no"]},"Q11A":{"type":"string","description":"Do you have a Higher Education Loan Program (HELP) or Trade Support Loan (TSL) debt? If you answered yes at question 10 as well as here, you are exempt from having additional PAYG amounts for HELP or TSL withheld from payments to you.","enum":["yes","no"]},"Q11B":{"type":"string","description":"Do you have a Financial Supplement debt? If you answered yes at question 10 as well as here, you are exempt from having additional PAYG amounts for Financial Supplement debts withheld from payments to you.","enum":["yes","no"]},"Q12":{"type":"string","description":"Do you have dependent children?","enum":["no","1","2","3","4","5","6","7","8","9","10"]}}}}}}},"required":true},"operationId":"api_v2_employees_{id}_financial-details_POST","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/employees\/{id}\/upload-resume":{"post":{"tags":["Employees"],"summary":"Upload employee resum\u00e9","requestBody":{"description":"Request example","content":{"multipart\/form-data":{"schema":{"type":"object","required":[],"properties":{"resume":{"type":"string","format":"binary","description":"Resum\u00e9 file to be uploaded. Max. file size is 30 Mb"}}}}},"required":true},"operationId":"api_v2_employees_{id}_upload-resume_POST","parameters":[{"name":"id","in":"path","description":"Employee Id","required":true,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true}}}}}}},"x-hideTryItPanel":true}},"\/api\/v2\/award-interpretation\/analyse\/time-based":{"get":{"tags":["Payroll"],"summary":"Analyse real timesheets by employees, operations or rosters","operationId":"api_v2_award-interpretation_analyse_time-based_GET","parameters":[{"name":"filter_employee_ids","in":"query","description":"Filter results by employee Ids (comma-separated Ids)\n","required":false,"schema":{"type":"string"}},{"name":"filter_client_id","in":"query","description":"Filter results by selected operation Id\n","required":false,"schema":{"type":"string"}},{"name":"filter_roster_id","in":"query","description":"Filter results by roster Id\n","required":false,"schema":{"type":"string"}},{"name":"filter_date_from","in":"query","description":"Start date of the request (Y-m-d format)\n","required":false,"schema":{"type":"string"}},{"name":"filter_date_to","in":"query","description":"End date of the request (Y-m-d format)\n","required":false,"schema":{"type":"string"}},{"name":"filter_office_code","in":"query","description":"Filter results by office code Id\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Set the maximum number of records returned per request. Limited to 1000 per page.","required":false,"schema":{"type":"integer"}},{"name":"include_unapproved_shifts","in":"query","description":"Specify whether results to include unapproved shifts (true\/false)\n","required":false,"schema":{"type":"string"}},{"name":"page","in":"query","description":"Set the page number to be returned for this request out of X total pages","required":false,"schema":{"type":"integer"}}],"responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"current_page":{"type":"number","description":"Current page number of the results","example":10},"data":{"type":"array","items":{"type":"object","properties":{"data":{"type":"object","description":"Week ending data","properties":{"2026-05-31":{"type":"object","properties":{"data":{"type":"object","description":"Day data","properties":{"2026-05-27":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","description":"Type of item","enum":["line_item","entitlement_redeemed","entitlement_cashout","entitlement_termination","entitlement_accrual","break","allowance","unpaid_line_item","shift_allowance","meal_allowance","reimbursement"]},"type_secondary":{"type":"string","description":"Detailed label for different rate labels from an award","example":"Morning shift S-1"},"unique_label":{"type":"string","description":"Extension of 'type_secondary'","example":"Morning shift S-1_ordinary"},"pay_rate_type":{"type":"string","description":"Pay rate type","enum":["ordinary","overtime"]},"label":{"type":"string","description":"Label for this item","example":"Rostered day off"},"ruleLabel":{"type":"string","description":"This comes from award position","example":"Saturday evening shift"},"workingTimeRuleLabel":{"type":"string","description":"Working time rule label","example":"Shift worked between 08:00 AM - 05:00 PM"},"qty":{"type":"number","description":"Total amount of units for this item (e.g. hour)","example":7.6},"pay_rate":{"type":"number","description":"Pay rate per unit (e.g. hour)","example":26.5},"charge_rate":{"type":"number","description":"Charge rate per unit (e.g. hour)","example":13.5},"amount":{"type":"number","description":"Amount to be paid to employee","example":565.5},"charge_amount":{"type":"number","description":"Amount to be charged to clients","example":600},"start_time":{"type":"string","description":"Start time of this item (e.g. shift)","example":"2026-06-01 03:32:51"},"end_time":{"type":"string","description":"End time of this item (e.g. shift)","example":"2026-06-01 03:32:51"},"quantity_applicable":{"type":"boolean","description":"If set to true, the quantity will be added to the total of the collection","enum":[true,false]},"amount_applicable":{"type":"boolean","description":"If set to true, the dollar amount will be added to the total of the collection","enum":[true,false]},"award":{"type":"string","description":"Award name related to this item","example":"Store Clerk Award 2025"},"award_id":{"type":"integer","description":"Award ID related to this item","example":10},"position":{"type":"string","description":"Position name \/ label","example":"Store Clerk - Category 3"},"position_id":{"type":"integer","description":"Position Id","example":413},"operation":{"type":"string","description":"Operation name","example":"Store A"},"operation_id":{"type":"integer","description":"Operation Id","example":6},"roster":{"type":"string","description":"Roster name","example":"Store A - Midday"},"roster_id":{"type":"integer","description":"Roster Id","example":2343},"timesheet_id":{"type":"integer","description":"Timesheet Id related to this item","example":12324},"day_id":{"type":"integer","description":"Working day Id\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Weekday<\/td><\/tr><tr><td>2<\/td><td>Saturday<\/td><\/tr><tr><td>3<\/td><td>Sunday<\/td><\/tr><tr><td>4<\/td><td>Holiday<\/td><\/tr><\/table>","enum":[1,2,3,4]},"overtime_reason":{"type":"integer","description":"Overtime reason Id\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>No overtime<\/td><\/tr><tr><td>1<\/td><td>Max. ordinary per day<\/td><\/tr><tr><td>2<\/td><td>Max. ordinary per week<\/td><\/tr><tr><td>3<\/td><td>Max. ordinary per fortnight<\/td><\/tr><tr><td>4<\/td><td>Unpaid break<\/td><\/tr><tr><td>5<\/td><td>Overtime timeframe<\/td><\/tr><tr><td>6<\/td><td>Overtime award setting rest period<\/td><\/tr><tr><td>7<\/td><td>Specified days multiple shift over days consecutive<\/td><\/tr><tr><td>8<\/td><td>Specified days multiple shift over days non consecutive<\/td><\/tr><tr><td>9<\/td><td>Public holiday<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6,7,8,9]}}}},"totals":{"type":"object","properties":{"quantities":{"type":"object","properties":{"Normal (OTE) Ordinary - !!(this could be anything)!!":{"type":"object","properties":{"type":{"type":"string","description":"Type of quantity item","enum":["line_item","entitlement_redeemed","entitlement_cashout","entitlement_termination","entitlement_accrual","break","allowance","unpaid_line_item","shift_allowance","meal_allowance","reimbursement"]},"pay_rate_type":{"type":"string","description":"Pay rate type","enum":["ordinary","overtime"]},"value":{"type":"number","description":"Amount corresponding to quantity item","example":1.75}}},"total":{"type":"number","description":"Sum total of quantities' values","example":10043.3}}},"amounts":{"type":"object","properties":{"Normal (OTE) Ordinary - !!(this could be anything)!!":{"type":"object","properties":{"type":{"type":"string","description":"Type of quantity item","enum":["line_item","entitlement_redeemed","entitlement_cashout","entitlement_termination","entitlement_accrual","break","allowance","unpaid_line_item","shift_allowance","meal_allowance","reimbursement"]},"pay_rate_type":{"type":"string","description":"Pay rate type","enum":["ordinary","overtime"]},"value":{"type":"number","description":"Amount being paid to employee","example":5353.43},"value_charge":{"type":"number","description":"Amount being charged to clients","example":4252.44}}},"total":{"type":"number","description":"Sum total of amount items' values","example":1162.53},"total_charge":{"type":"number","description":"Sum total of amount items' charge values","example":5040.4}}}}}}}}},"totals":{"type":"object","properties":{"quantities":{"type":"object","properties":{"All Quantity Items !!(this could be multiple items)!!":{"type":"object","properties":{"type":{"type":"string","description":"Type of quantity item","enum":["line_item","entitlement_redeemed","entitlement_cashout","entitlement_termination","entitlement_accrual","break","allowance","unpaid_line_item","shift_allowance","meal_allowance","reimbursement"]},"pay_rate_type":{"type":"string","description":"Pay rate type","enum":["ordinary","overtime"]},"value":{"type":"number","description":"Amount corresponding to quantity item","example":1.75}}},"total":{"type":"number","description":"Sum total of quantities' values","example":10043.3}}},"amounts":{"type":"object","properties":{"All Quantity Items !!(these could be anything)!!":{"type":"object","properties":{"type":{"type":"string","description":"Type of quantity item","enum":["line_item","entitlement_redeemed","entitlement_cashout","entitlement_termination","entitlement_accrual","break","allowance","unpaid_line_item","shift_allowance","meal_allowance","reimbursement"]},"pay_rate_type":{"type":"string","description":"Pay rate type","enum":["ordinary","overtime"]},"value":{"type":"number","description":"Amount being paid to employee","example":5353.43},"value_charge":{"type":"number","description":"Amount being charged to clients","example":4252.44}}},"total":{"type":"number","description":"Sum total of amount items' values","example":1162.53},"total_charge":{"type":"number","description":"Sum total of amount items' charge values","example":5040.4}}}}}}}}},"totals":{"type":"object","properties":{"quantities":{"type":"object","properties":{"All Quantity Items !!(this could be multiple items)!!":{"type":"object","properties":{"type":{"type":"string","description":"Type of quantity item","enum":["line_item","entitlement_redeemed","entitlement_cashout","entitlement_termination","entitlement_accrual","break","allowance","unpaid_line_item","shift_allowance","meal_allowance","reimbursement"]},"pay_rate_type":{"type":"string","description":"Pay rate type","enum":["ordinary","overtime"]},"value":{"type":"number","description":"Amount corresponding to the quantity item","example":1.75}}},"total":{"type":"number","description":"Sum total of quantities' values","example":105.55}}},"amounts":{"type":"object","properties":{"All Items !!(this could be multiple items)!!":{"type":"object","properties":{"type":{"type":"string","description":"Type of quantity item","enum":["line_item","entitlement_redeemed","entitlement_cashout","entitlement_termination","entitlement_accrual","break","allowance","unpaid_line_item","shift_allowance","meal_allowance","reimbursement"]},"pay_rate_type":{"type":"string","description":"Pay rate type","enum":["ordinary","overtime"]},"value":{"type":"number","description":"Amount being paid to employee","example":51.75},"value_charge":{"type":"number","description":"Amount being charged to clients","example":55.75}}},"total":{"type":"number","description":"Sum total of amount items' values","example":568.94},"total_charge":{"type":"number","description":"Sum total of amount items' charge values","example":701.75}}}}},"employee":{"type":"object","properties":{"id":{"type":"integer","description":"Employee Id","example":1197},"name":{"type":"string","description":"Employee Name","example":"John Doe"},"employment_type_display":{"type":"string","description":"Employment Type","enum":["Full Time","Part Time","Casual"]}}}}}},"from":{"type":"number","description":"Record start number for current page; if page = 2 and per_page = 20, from would be 21","example":1},"to":{"type":"number","description":"Record end number for current page; if page = 2 and per_page = 20, to would be 40","example":20},"last_page":{"type":"number","description":"Last page number","example":10},"total":{"type":"number","description":"Total number of records","example":2545},"per_page":{"type":"number","description":"Number of records per page","example":20}}}}}}},"x-hideTryItPanel":true}},"\/api\/v3\/approve-shifts":{"get":{"tags":["Approved Shifts V3"],"summary":"Returns all rostered shifts with pagination","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"filterIds":{"type":"array","description":"Get specific shifts (you still need the start and end filters for now)","example":[123,456,789],"items":{"type":"integer"}},"filterStartDate":{"type":"string","description":"Set the filter start date for the request","example":"2026-06-01"},"filterEndDate":{"type":"string","description":"Set the filter end date for the request","example":"2026-06-01"},"filterOperation":{"type":"array","description":"Filter the results by operation Id(s)","example":[120,121],"items":{"type":"integer"}},"filterRoster":{"type":"array","description":"Filter the results by roster branch Id(s)","example":[278,279],"items":{"type":"integer"}},"filterEmployee":{"type":"array","description":"Filter the results by employee Id(s)","example":[10034,10035],"items":{"type":"integer"}},"filterShiftCreation":{"type":"string","description":"Filter the results by creator of shifts","enum":["all","admin","employee"]},"filterShiftType":{"type":"array","description":"Filter the results by shift type","example":["approved"],"items":{"type":"string","enum":["all","unapproved","approved","declined"]}},"filterOfficeCode":{"type":"array","description":"Filter the results by office code Id(s)","example":[1,2,3],"items":{"type":"integer"}},"filterAllowancesOnly":{"type":"boolean","description":"Filter the results to only include shifts with allowances","example":1},"filterShiftWithQuestionnaireComment":{"type":"boolean","description":"Filter the results to only include shifts with questionnaire comments","example":1},"filterUpdatedSince":{"type":"string","description":"Filter the results to records updated since timestamp","example":"2026-06-01 03:32:51"},"include":{"type":"string","description":"Include data relationships","enum":["tags","tag-groups"]},"limit":{"type":"integer","description":"Limit the number of results to be returned per page; default if not set is 100","example":100},"page":{"type":"integer","description":"Set the page number for results to be returned; default if not set is 1","example":1}}}}},"required":true},"operationId":"api_v3_approve-shifts_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Primary record ID","example":1234},"shift_id":{"type":"string","description":"Approved shift ID","example":"15396"},"clock_log_id":{"type":"string","description":"Clock log record ID that corresponds with this approved shift","example":"17"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"is_unrostered_shift":{"type":"boolean","description":"Is this an unrostered shift?","enum":[true,false]},"shift_status":{"type":"integer","description":"Shift status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Unfilled<\/td><\/tr><tr><td>1<\/td><td>Ready<\/td><\/tr><tr><td>2<\/td><td>Complete<\/td><\/tr><tr><td>3<\/td><td>Active<\/td><\/tr><tr><td>4<\/td><td>Empty<\/td><\/tr><\/table>","enum":[0,1,2,3,4]},"employee_type":{"type":"string","description":"Employment type as recorded in the system\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>casual<\/td><td>Casual<\/td><\/tr><tr><td>full<\/td><td>Full-time<\/td><\/tr><tr><td>part<\/td><td>Part-time<\/td><\/tr><\/table>","enum":["casual","full","part"]},"employee_shift_status":{"type":"integer","description":"Employee offer status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Offer to send<\/td><\/tr><tr><td>1<\/td><td>Offer sent to employee<\/td><\/tr><tr><td>2<\/td><td>Offer accepted<\/td><\/tr><tr><td>3<\/td><td>Offer declined<\/td><\/tr><tr><td>4<\/td><td>Offer cancelled<\/td><\/tr><tr><td>5<\/td><td>Offer reassigned<\/td><\/tr><tr><td>6<\/td><td>Shift submitted by employee<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6]},"verification":{"type":"integer","description":"Employee shift verification status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Not yet verified<\/td><\/tr><tr><td>1<\/td><td>Approved<\/td><\/tr><tr><td>2<\/td><td>Rejected<\/td><\/tr><tr><td>3<\/td><td>Pre-approved<\/td><\/tr><tr><td>4<\/td><td>On leave<\/td><\/tr><tr><td>5<\/td><td>Automatically approved<\/td><\/tr><tr><td>6<\/td><td>Submitted by employee<\/td><\/tr><tr><td>7<\/td><td>Locked shift<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6,7]},"client_id":{"type":"string","description":"Operation ID related to this shift","example":"71"},"client_name":{"type":"string","description":"Operation name","example":"Paper Route A"},"client_status":{"type":"string","description":"Operation status","enum":["Available","Unavailable","Pending","Prospective","Declined","Archived","Approved"]},"client_declined":{"type":"integer","description":"Operation declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Declined<\/td><\/tr><tr><td>0<\/td><td>Not declined<\/td><\/tr><\/table>","enum":[0,1]},"client_office_code":{"type":"string","description":"Operation office code id","example":"4"},"client_manager":{"type":"string","description":"Operation manager id","example":"17"},"client_suburb":{"type":"string","description":"Operation location (suburb)","example":"Knoxfield"},"position_group_search":{"type":"string","description":"Is position group enabled? \n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>True<\/td><\/tr><tr><td>0<\/td><td>False<\/td><\/tr><\/table>","enum":["1","0"]},"statement_cycle":{"type":"string","description":"Operation statement cycle\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Weekly<\/td><\/tr><tr><td>2<\/td><td>Fortnightly<\/td><\/tr><tr><td>20<\/td><td>Advance\/arrears<\/td><\/tr><\/table>","enum":["1","2","20"]},"employee_id":{"type":"string","description":"Employee Id","example":"77"},"external_id":{"type":"string","description":"External ID for the employee. Usually set to previous system's ID","example":"X00510"},"employee_name":{"type":"string","description":"Employee name","example":"Joseph Sample"},"roster_branch_id":{"type":"integer","description":"Roster branch id","example":10},"roster_branch_name":{"type":"string","description":"Roster branch name","example":"Packing Shift Morning"},"roster_branch_state":{"type":"string","description":"Roster branch state; for possible values, look at the '\/api\/v1\/state' route","example":"QLD"},"roster_branch_location":{"type":"string","description":"Roster branch location label; for possible values, look at '\/api\/v1\/location' route","example":"Sydney North"},"scheduled_time":{"type":"object","properties":{"scheduled_start":{"type":"string","description":" The rostered start time of the shift","example":"2020-08-26 07:00:00"},"scheduled_end":{"type":"string","description":" The rostered end time of the shift","example":"2020-08-26 15:06:00"},"scheduled_break_length":{"type":"string","description":"The total rostered unpaid break hours within the shift","example":"00:30"}},"description":"The shift times scheduled from the Roster. This displays in the Rostered column on the Approve Shifts page"},"location":{"type":"object","properties":{"in_latitude":{"type":"string","description":"Clock in latitude","example":"-37.84159622"},"out_longitude":{"type":"string","description":"Clock out longitude","example":"145.24734412"},"out_latitude":{"type":"string","description":"Clock out latitude","example":"-37.84154535"},"in_longitude":{"type":"string","description":"Clock in longitude","example":"145.24734412"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]}}},"recorded_time":{"type":"object","properties":{"recorded_start":{"type":"string","description":"The clocked start time of the shift","example":"2020-08-26 15:21:42"},"recorded_end":{"type":"string","description":"The clocked end time of the shift","example":"2020-08-26 23:36:54"},"recorded_break_length":{"type":"string","description":"The total clocked unpaid break hours within the shift","example":"00:28"}},"description":"The shift times clocked by the employee. This displays in the Worked column on the Approve Shifts page"},"estimated_time":{"type":"object","properties":{"estimated_start":{"type":"string","description":"The start time of the shift that would be approved or declined","example":"2020-08-26 07:00:00"},"estimated_end":{"type":"string","description":"The end time of the shift that would be approved or declined","example":"2020-08-26 15:06:00"},"estimated_break_length":{"type":"string","description":"The total hours of the unpaid breaks that would be approved or declined within the shift","example":"00:30"},"estimated_breaks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Estimated break record ID","example":12305},"shift_id":{"type":"integer","description":"Estimated shift ID","example":100},"start":{"type":"string","description":"Start time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"end":{"type":"string","description":"End time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"length":{"type":"string","description":"Length of break (hour format)","example":"00:30"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]},"break_is_taken":{"type":"boolean","description":"Whether the break is taken or not","enum":[true,false]}}},"description":"Each unpaid or paid break that would be approved or declined within the shift"},"estimated_duration":{"type":"number","description":"The total hours that would be approved or declined. Eg. A shift from 9AM - 1PM with a 10 minute paid break would total to 4 hours. A shift from 9AM - 1PM with a 30 minute unpaid break would total to 3.5 hours","example":6.57}},"description":"The shift times that would be approved or declined, including any edits made to the original times displayed in the Approve column on the Approve Shifts page"},"approved_time":{"type":"object","properties":{"approved_start":{"type":"string","description":"The start time of the shift that is approved","example":"2026-06-01 03:32:51"},"approved_end":{"type":"string","description":"The end time of the shift that is approved","example":"2026-06-01 03:32:51"},"approved_break_length":{"type":"string","description":"The total hours of unpaid breaks that is approved within the shift","example":"00.30"},"approved_breaks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Approved break record ID","example":12305},"shift_id":{"type":"integer","description":"Approved shift ID","example":100},"start":{"type":"string","description":"Start time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"end":{"type":"string","description":"End time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"length":{"type":"string","description":"Length of break (decimal format)","example":"0.5"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]}}},"description":"Each unpaid or paid break that is approved within the shift"},"approved_duration":{"type":"number","description":"The total hours that are approved for payroll. Eg. A shift from 9AM - 1PM with a 10 minute paid break would total to 4 hours. A shift from 9AM - 1PM with a 30 minute unpaid break would total to 3.5 hours","example":5.87}},"description":"The shift times approved for hours worked. These times match the Estimated times which are approved for payroll. If this data is not present in the API response, then the shift has not been approved at that stage"},"position":{"type":"object","properties":{"position_id":{"type":"string","description":"Position id for the shift","example":"439"},"title":{"type":"string","description":"Position title for the shift","example":"Process Worker Level 1 (Casual)"},"custom_position_title":{"type":"string","description":"Optional position title for the shift (if applicable)","example":"Level 1 Helper"}}},"position_group":{"type":"object","properties":{"position_group_id":{"type":"string","description":"Employee position group id for shift","example":"1"},"title":{"type":"string","description":"Employee position group title for shift","example":"Position Group 1"}}},"is_clock_log_deleted":{"type":"string","description":"Display the date and time when clock log record is deleted (if applicable)","example":"2026-06-01 03:32:51"},"clock_comment_start":{"type":"string","description":"Clock log comment upon starting","example":"Starting 5 minutes early"},"clock_comment_end":{"type":"string","description":"Clock log comment upon finishing","example":"Finishing 5 minutes early"},"clock_start_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"clock_end_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"leave_rule_id":{"type":"string","description":"Deprecated","example":""},"absent_comments":{"type":"string","description":"Deprecated","example":""},"document":{"type":"boolean","description":"Has this employee submitted document(s) for this shift?","enum":[true,false]},"did_not_work":{"type":"boolean","description":"If this employee did not work on this shift, this would be true","enum":[true,false]},"reason":{"type":"object","properties":{"reason_id":{"type":"string","description":"Id of absence reason from the list (if applicable); see '\/api\/v1\/reason-list' route","example":"2"},"reason":{"type":"string","description":"Reason of absence (if applicable); see '\/api\/v1\/reason-list' route","example":"Approved Leave"}}},"roster_shift_comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment left for this roster shift","example":"Please be available at 6:35 AM"},"type":{"type":"string","description":"Roster shift comment types","enum":["general","candidate_submitted"]},"user_id":{"type":"string","description":"User Id of the creator of the comment","example":"1115"},"roster_job_shift_candidate_id":{"type":"string","description":"Id of roster shift and employee in database","example":"3059"},"visible_to_employee":{"type":"integer","description":"Determine whether this comment is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[0,1]}}}},"timesheet_file":{"type":"string","description":"Path to submitted timesheet file","example":"\/secure\/documents\/timesheets-additional\/247"},"last_modified":{"type":"object","properties":{"user":{"type":"string","description":"Admin user name","example":"James Sampler"},"type":{"type":"string","description":"Event type","enum":["Approved","Auto-approved","Bulk adjusted end time","Created","Create unrostered","Declined","Edited","Leave","Pre-approved"]},"timestamp":{"type":"string","description":"Date and time when this record was last edited","example":"2026-06-01 03:32:51"}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"title":{"type":"string","description":"Allowance title","example":"Forklift Allowance"},"type":{"type":"string","description":"Allowance type","enum":["hourly","daily","hour (value by candidate)","km (value by candidate)","weekly","shift"]},"rates":{"type":"object","properties":{"label":{"type":"string","description":"Rate label","example":"Forklift Allowance"},"rate":{"type":"string","description":"Rate of the allowance","example":"0.550000"}}},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5},"award_title":{"type":"string","description":"The award title under which this allowance is based","example":"General Retail Industry Award"},"candidate_submitted":{"type":"string","description":"Is this submitted by employee?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}},"errors":{"type":"array","items":{"type":"object","properties":{"roster_shift_candidate_id":{"type":"string","description":"The id of the shift","example":"350"},"severity":{"type":"string","description":"Severity of the error","enum":["error","warning"]},"type":{"type":"string","description":"Error types","enum":["fatigue","upcoming_fatigue","employee-not-available","employee-not-available-time-based","shift-conflict","job-conflict","position-mis-match","position-not-set","candidate-archived","employee-not-set","leave-conflict","duration-exceeds-limit","zero-duration","negative-duration","timesheet-paid","maximum-weekly-hours-exceeded","shift-already-offered","maximum-weekly-ordinary-hours-exceeded"]},"label":{"type":"string","description":"Friendly description of the error types","example":"Employee is unavailable."},"created_at":{"type":"string","description":"Date and time when record is created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when record was last updated","example":"2026-06-01 03:32:51"},"available_time":{"type":"string","description":"Time when employee should be available","example":"[{\"date\":\"2020-08-31\",\"start\":\"2020-08-31 15:00\",\"end\":\"2020-08-31 23:00\"}]"}}}},"timesheet_status":{"type":"string","description":"Status of timesheet related to this shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Submitted\/Pending<\/td><\/tr><tr><td>1<\/td><td>Accepted<\/td><\/tr><tr><td>2<\/td><td>Invoiced<\/td><\/tr><tr><td>3<\/td><td>Declined<\/td><\/tr><tr><td>4<\/td><td>Paid<\/td><\/tr><\/table>","enum":["0","1","2","3","4"]},"available_id":{"type":"string","description":"Available timesheet id","example":"13916"},"is_holiday":{"type":"string","description":"Is shift on a public holiday?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>null<\/td><td>No Holiday<\/td><\/tr><tr><td>0<\/td><td>Treat as normal day, standard rules will apply<\/td><\/tr><tr><td>1<\/td><td>Set as public holiday, shift paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>Pay base (OTE) rate, no overtime or shift loading applies<\/td><\/tr><\/table>","enum":[null,0,1,2]},"employee_declined_status":{"type":"string","description":"Is employee declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>True<\/td><\/tr><tr><td>0<\/td><td>False<\/td><\/tr><\/table>","enum":["1","0"]},"approver_name":{"type":"string","description":"Approver\\'s name","example":"The Admin"},"approver_email":{"type":"string","description":"Approver\\'s email address (if shift was approved)","example":"admin@admin.com"},"supervisor_name":{"type":"string","description":"Supervisor name","example":"Doug Smith"},"supervisor_comment":{"type":"string","description":"Supervisor comment","example":null},"supervisor_unavailable_comment":{"type":"string","description":"Supervisor unavailable comment","example":null},"supervisor_unavailable":{"type":"string","description":"Supervisor unavailable status","example":null},"employee_first_name":{"type":"string","description":"Employee first name","example":"John"},"employee_surname":{"type":"string","description":"Employee surname","example":"Smith"},"employee_phone_number":{"type":"string","description":"Employee phone number","example":"0411111111"},"old_position":{"type":"object","properties":{"id":{"type":"integer","description":"Old position id","example":null},"title":{"type":"string","description":"Old position title","example":null}}},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Comment ID","example":123},"action":{"type":"string","description":"Action performed","example":"Break Taken"},"type":{"type":"string","description":"Type of comment","example":"attendance"},"reason":{"type":"string","description":"Reason for the comment","example":"Late break"},"roster_job_shift_break_id":{"type":"integer","description":"Roster job shift break ID","example":null}}}},"clock_log_questionnaire":{"type":"array","items":{"type":"object","properties":{"question_title":{"type":"string","description":"Title of the question","example":"Did you take a break?"},"answer":{"type":"string","description":"Answer to the question","example":"Yes"},"comment":{"type":"string","description":"Additional comment","example":"Break taken at 12:30"},"type":{"type":"string","description":"Type of question","example":"boolean"}}}},"clock_log_source":{"type":"string","description":"Clock log source","example":null},"attendance":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Attendance record ID","example":47425},"can_id":{"type":"integer","description":"Candidate ID","example":74},"employee_shift_id":{"type":"integer","description":"Employee shift ID","example":1837651},"job_id":{"type":"integer","description":"Job ID","example":null},"c_id":{"type":"integer","description":"Client ID","example":1},"leave_rule_id":{"type":"integer","description":"Leave rule ID","example":5556},"leave_rule":{"type":"object","properties":{"leave_rule_id":{"type":"integer","description":"Leave rule ID","example":5556},"leave_title":{"type":"string","description":"Leave title","example":"Annual Leave"},"withhold_tax":{"type":"integer","description":"Withhold tax flag","example":0},"payment_summmary":{"type":"integer","description":"Payment summary flag","example":0},"super":{"type":"integer","description":"Superannuation flag","example":0}}},"reason_id":{"type":"integer","description":"Reason ID","example":2},"reason":{"type":"object","properties":{"id":{"type":"integer","description":"Reason ID","example":2},"title":{"type":"string","description":"Reason title","example":"Sick"},"created_at":{"type":"string","description":"Created at timestamp","example":"2018-08-23 11:37:51"},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2018-08-23 11:38:13"},"type":{"type":"integer","description":"Reason type","example":1}}},"absent_comment":{"type":"string","description":"Absent comment","example":""},"ato_reason":{"type":"string","description":"ATO reason","example":null},"attendance_date":{"type":"string","description":"Attendance date","example":"2025-09-22"},"authority_id":{"type":"integer","description":"Authority ID","example":1},"candidate_submitted":{"type":"integer","description":"Candidate submitted flag","example":0},"clock_id":{"type":"integer","description":"Clock ID","example":null},"created_at":{"type":"string","description":"Created at timestamp","example":"2025-09-22 11:25:53"},"deleted_at":{"type":"string","description":"Deleted at timestamp","example":null},"is_pending_termination":{"type":"integer","description":"Is pending termination flag","example":0},"is_termination":{"type":"integer","description":"Is termination flag","example":0},"leave_pay_nopay":{"type":"string","description":"Leave pay\/no pay","example":""},"leave_rule_amount":{"type":"string","description":"Leave rule amount","example":"0.0000"},"leave_rule_processed_by_approve_shift":{"type":"integer","description":"Leave rule processed by approve shift flag","example":0},"payg_gen_type":{"type":"integer","description":"PAYG generation type","example":null},"scheduled_termination_date":{"type":"string","description":"Scheduled termination date","example":null},"subclass_id":{"type":"integer","description":"Subclass ID","example":69},"termination_data":{"type":"string","description":"Termination data","example":null},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2025-09-22 11:25:53"}}}},"costing":{"type":"array","items":{"type":"object"}},"shift_costing":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Shift costing record ID","example":175},"invoicing_po_id":{"type":"integer","description":"Invoicing PO ID","example":null},"shift_candidate_id":{"type":"integer","description":"Shift candidate ID","example":1837651},"user_id":{"type":"integer","description":"User ID","example":1},"custom_po_label":{"type":"string","description":"Custom PO label","example":"Coaching"},"is_override":{"type":"integer","description":"Is override flag","example":1},"start":{"type":"string","description":"Costing start time","example":"2025-09-22 12:00:00"},"end":{"type":"string","description":"Costing end time","example":"2025-09-22 14:00:00"},"created_at":{"type":"string","description":"Created at timestamp","example":"2025-09-22 11:05:27"},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2025-09-22 11:05:27"},"deleted_at":{"type":"string","description":"Deleted at timestamp","example":"2025-09-22 11:05:27"}}}},"leave_application_ids":{"type":"array","items":{"type":"integer"}},"leave_application_hours":{"type":"array","items":{"type":"number"}},"shiftLeave":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Leave application ID","example":101},"shift_candidate_id":{"type":"integer","description":"Shift candidate ID","example":1837651},"leave_type":{"type":"string","description":"Type of leave","example":"Annual Leave"},"hours":{"type":"number","description":"Number of leave hours","example":8},"start":{"type":"string","description":"Leave start time","example":"2025-09-22 12:00:00"},"end":{"type":"string","description":"Leave end time","example":"2025-09-22 14:00:00"},"status":{"type":"string","description":"Leave application status","example":"Approved"},"created_at":{"type":"string","description":"Created at timestamp","example":"2025-09-22 11:05:27"},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2025-09-22 11:05:27"},"deleted_at":{"type":"string","description":"Deleted at timestamp","example":"2025-09-22 11:05:27"}}}},"sum_leave_application_hours":{"type":"number","description":"Sum of leave application hours","example":0},"approve_shift_log":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Approve shift log id","example":1234},"action":{"type":"string","description":"Action type","example":"Auto-approved"},"roster_job_shift_candidate_id":{"type":"integer","description":"Roster job shift candidate id","example":1234},"clock_id":{"type":"integer","description":"Clock log id","example":1234},"user_id":{"type":"integer","description":"User id","example":1234},"employee_id":{"type":"integer","description":"Employee id","example":1234},"position_id":{"type":"integer","description":"Position id","example":null},"position_group_id":{"type":"integer","description":"Position group id","example":6},"branch_id":{"type":"integer","description":"Branch id","example":1},"status":{"type":"integer","description":"Status","example":5},"start":{"type":"string","description":"Start time","example":"2025-09-08 09:30:00"},"end":{"type":"string","description":"End time","example":"2025-09-08 13:00:00"},"break_length":{"type":"number","format":"float","example":0.5,"description":"Break duration"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]},"created_at":{"type":"string","description":"Created at","example":"2025-09-08 13:07:19"},"updated_at":{"type":"string","description":"Updated at","example":"2025-09-08 13:07:20"},"work_app_user_id":{"type":"integer","description":"Work app user id","example":null},"is_processed":{"type":"integer","description":"Is processed","example":1},"is_holiday":{"type":"string","description":"Is holiday","example":null},"available_id":{"type":"integer","description":"Available id","example":1234},"user":{"type":"object","properties":{"id":{"type":"integer","description":"User id","example":1234},"name":{"type":"string","description":"User name","example":"John Smith"},"email":{"type":"string","description":"User email","example":"john.smith@example.com"},"created_at":{"type":"string","description":"Created at","example":"2025-06-25 14:37:37"},"updated_at":{"type":"string","description":"Updated at","example":"2025-09-16 09:30:03"},"integration_id":{"type":"string","description":"Integration id","example":null},"deleted_at":{"type":"string","description":"Deleted at","example":null}}}}}},"created_at":{"type":"string","description":"Created at","example":"2025-07-29 12:09:16"}}}},"meta":{"type":"object","properties":{"pagination":{"type":"object","properties":{"current_page":{"type":"integer","example":5},"per_page":{"type":"integer","example":200},"total":{"type":"integer","example":878},"last_page":{"type":"integer","example":5},"has_more_pages":{"type":"boolean","example":false}}}}}}}}}}},"x-hideTryItPanel":true}},"\/api\/v3\/approve-shifts\/unassigned":{"get":{"tags":["Approved Shifts V3"],"summary":"Returns all unassigned shifts with pagination","requestBody":{"description":"Request example","content":{"application\/json":{"schema":{"type":"object","required":[],"properties":{"filterIds":{"type":"array","description":"Get specific shifts (you still need the start and end filters for now)","example":[123,456,789],"items":{"type":"integer"}},"filterStartDate":{"type":"string","description":"Set the filter start date for the request","example":"2026-06-01"},"filterEndDate":{"type":"string","description":"Set the filter end date for the request","example":"2026-06-01"},"filterOperation":{"type":"array","description":"Filter the results by operation Id(s)","example":[120,121],"items":{"type":"integer"}},"filterRoster":{"type":"array","description":"Filter the results by roster branch Id(s)","example":[278,279],"items":{"type":"integer"}},"filterEmployee":{"type":"array","description":"Filter the results by employee Id(s)","example":[10034,10035],"items":{"type":"integer"}},"filterShiftCreation":{"type":"string","description":"Filter the results by creator of shifts","enum":["all","admin","employee"]},"filterShiftType":{"type":"array","description":"Filter the results by shift type","example":["approved"],"items":{"type":"string","enum":["all","unapproved","approved","declined"]}},"filterOfficeCode":{"type":"array","description":"Filter the results by office code Id(s)","example":[1,2,3],"items":{"type":"integer"}},"filterAllowancesOnly":{"type":"boolean","description":"Filter the results to only include shifts with allowances","example":1},"filterShiftWithQuestionnaireComment":{"type":"boolean","description":"Filter the results to only include shifts with questionnaire comments","example":1},"filterUpdatedSince":{"type":"string","description":"Filter the results to records updated since timestamp","example":"2026-06-01 03:32:51"},"include":{"type":"string","description":"Include data relationships","enum":["tags","tag-groups"]},"limit":{"type":"integer","description":"Limit the number of results to be returned per page; default if not set is 100","example":100},"page":{"type":"integer","description":"Set the page number for results to be returned; default if not set is 1","example":1}}}}},"required":true},"operationId":"api_v3_approve-shifts_unassigned_GET","responses":{"403":{"description":"Not authorised"},"200":{"description":"Successful operation","content":{"application\/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Primary record ID","example":1234},"shift_id":{"type":"string","description":"Approved shift ID","example":"15396"},"clock_log_id":{"type":"string","description":"Clock log record ID that corresponds with this approved shift","example":"17"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"is_unrostered_shift":{"type":"boolean","description":"Is this an unrostered shift?","enum":[true,false]},"shift_status":{"type":"integer","description":"Shift status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Unfilled<\/td><\/tr><tr><td>1<\/td><td>Ready<\/td><\/tr><tr><td>2<\/td><td>Complete<\/td><\/tr><tr><td>3<\/td><td>Active<\/td><\/tr><tr><td>4<\/td><td>Empty<\/td><\/tr><\/table>","enum":[0,1,2,3,4]},"employee_type":{"type":"string","description":"Employment type as recorded in the system\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>casual<\/td><td>Casual<\/td><\/tr><tr><td>full<\/td><td>Full-time<\/td><\/tr><tr><td>part<\/td><td>Part-time<\/td><\/tr><\/table>","enum":["casual","full","part"]},"employee_shift_status":{"type":"integer","description":"Employee offer status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Offer to send<\/td><\/tr><tr><td>1<\/td><td>Offer sent to employee<\/td><\/tr><tr><td>2<\/td><td>Offer accepted<\/td><\/tr><tr><td>3<\/td><td>Offer declined<\/td><\/tr><tr><td>4<\/td><td>Offer cancelled<\/td><\/tr><tr><td>5<\/td><td>Offer reassigned<\/td><\/tr><tr><td>6<\/td><td>Shift submitted by employee<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6]},"verification":{"type":"integer","description":"Employee shift verification status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Not yet verified<\/td><\/tr><tr><td>1<\/td><td>Approved<\/td><\/tr><tr><td>2<\/td><td>Rejected<\/td><\/tr><tr><td>3<\/td><td>Pre-approved<\/td><\/tr><tr><td>4<\/td><td>On leave<\/td><\/tr><tr><td>5<\/td><td>Automatically approved<\/td><\/tr><tr><td>6<\/td><td>Submitted by employee<\/td><\/tr><tr><td>7<\/td><td>Locked shift<\/td><\/tr><\/table>","enum":[0,1,2,3,4,5,6,7]},"client_id":{"type":"string","description":"Operation ID related to this shift","example":"71"},"client_name":{"type":"string","description":"Operation name","example":"Paper Route A"},"client_status":{"type":"string","description":"Operation status","enum":["Available","Unavailable","Pending","Prospective","Declined","Archived","Approved"]},"client_declined":{"type":"integer","description":"Operation declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Declined<\/td><\/tr><tr><td>0<\/td><td>Not declined<\/td><\/tr><\/table>","enum":[0,1]},"client_office_code":{"type":"string","description":"Operation office code id","example":"4"},"client_manager":{"type":"string","description":"Operation manager id","example":"17"},"client_suburb":{"type":"string","description":"Operation location (suburb)","example":"Knoxfield"},"position_group_search":{"type":"string","description":"Is position group enabled? \n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>True<\/td><\/tr><tr><td>0<\/td><td>False<\/td><\/tr><\/table>","enum":["1","0"]},"statement_cycle":{"type":"string","description":"Operation statement cycle\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Weekly<\/td><\/tr><tr><td>2<\/td><td>Fortnightly<\/td><\/tr><tr><td>20<\/td><td>Advance\/arrears<\/td><\/tr><\/table>","enum":["1","2","20"]},"employee_id":{"type":"string","description":"Employee Id","example":"77"},"external_id":{"type":"string","description":"External ID for the employee. Usually set to previous system's ID","example":"X00510"},"employee_name":{"type":"string","description":"Employee name","example":"Joseph Sample"},"roster_branch_id":{"type":"integer","description":"Roster branch id","example":10},"roster_branch_name":{"type":"string","description":"Roster branch name","example":"Packing Shift Morning"},"roster_branch_state":{"type":"string","description":"Roster branch state; for possible values, look at the '\/api\/v1\/state' route","example":"QLD"},"roster_branch_location":{"type":"string","description":"Roster branch location label; for possible values, look at '\/api\/v1\/location' route","example":"Sydney North"},"scheduled_time":{"type":"object","properties":{"scheduled_start":{"type":"string","description":" The rostered start time of the shift","example":"2020-08-26 07:00:00"},"scheduled_end":{"type":"string","description":" The rostered end time of the shift","example":"2020-08-26 15:06:00"},"scheduled_break_length":{"type":"string","description":"The total rostered unpaid break hours within the shift","example":"00:30"}},"description":"The shift times scheduled from the Roster. This displays in the Rostered column on the Approve Shifts page"},"location":{"type":"object","properties":{"in_latitude":{"type":"string","description":"Clock in latitude","example":"-37.84159622"},"out_longitude":{"type":"string","description":"Clock out longitude","example":"145.24734412"},"out_latitude":{"type":"string","description":"Clock out latitude","example":"-37.84154535"},"in_longitude":{"type":"string","description":"Clock in longitude","example":"145.24734412"},"clock_in_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]},"clock_out_submitted_by":{"type":"string","description":"Displays the application that submitted the record (if applicable)","enum":["clock-app","employee-app"]}}},"recorded_time":{"type":"object","properties":{"recorded_start":{"type":"string","description":"The clocked start time of the shift","example":"2020-08-26 15:21:42"},"recorded_end":{"type":"string","description":"The clocked end time of the shift","example":"2020-08-26 23:36:54"},"recorded_break_length":{"type":"string","description":"The total clocked unpaid break hours within the shift","example":"00:28"}},"description":"The shift times clocked by the employee. This displays in the Worked column on the Approve Shifts page"},"estimated_time":{"type":"object","properties":{"estimated_start":{"type":"string","description":"The start time of the shift that would be approved or declined","example":"2020-08-26 07:00:00"},"estimated_end":{"type":"string","description":"The end time of the shift that would be approved or declined","example":"2020-08-26 15:06:00"},"estimated_break_length":{"type":"string","description":"The total hours of the unpaid breaks that would be approved or declined within the shift","example":"00:30"},"estimated_breaks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Estimated break record ID","example":12305},"shift_id":{"type":"integer","description":"Estimated shift ID","example":100},"start":{"type":"string","description":"Start time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"end":{"type":"string","description":"End time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"length":{"type":"string","description":"Length of break (hour format)","example":"00:30"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]},"break_is_taken":{"type":"boolean","description":"Whether the break is taken or not","enum":[true,false]}}},"description":"Each unpaid or paid break that would be approved or declined within the shift"},"estimated_duration":{"type":"number","description":"The total hours that would be approved or declined. Eg. A shift from 9AM - 1PM with a 10 minute paid break would total to 4 hours. A shift from 9AM - 1PM with a 30 minute unpaid break would total to 3.5 hours","example":6.57}},"description":"The shift times that would be approved or declined, including any edits made to the original times displayed in the Approve column on the Approve Shifts page"},"approved_time":{"type":"object","properties":{"approved_start":{"type":"string","description":"The start time of the shift that is approved","example":"2026-06-01 03:32:51"},"approved_end":{"type":"string","description":"The end time of the shift that is approved","example":"2026-06-01 03:32:51"},"approved_break_length":{"type":"string","description":"The total hours of unpaid breaks that is approved within the shift","example":"00.30"},"approved_breaks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Approved break record ID","example":12305},"shift_id":{"type":"integer","description":"Approved shift ID","example":100},"start":{"type":"string","description":"Start time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"end":{"type":"string","description":"End time of the break (or null if not specified)","example":"2026-06-01 03:32:51"},"length":{"type":"string","description":"Length of break (decimal format)","example":"0.5"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]}}},"description":"Each unpaid or paid break that is approved within the shift"},"approved_duration":{"type":"number","description":"The total hours that are approved for payroll. Eg. A shift from 9AM - 1PM with a 10 minute paid break would total to 4 hours. A shift from 9AM - 1PM with a 30 minute unpaid break would total to 3.5 hours","example":5.87}},"description":"The shift times approved for hours worked. These times match the Estimated times which are approved for payroll. If this data is not present in the API response, then the shift has not been approved at that stage"},"position":{"type":"object","properties":{"position_id":{"type":"string","description":"Position id for the shift","example":"439"},"title":{"type":"string","description":"Position title for the shift","example":"Process Worker Level 1 (Casual)"},"custom_position_title":{"type":"string","description":"Optional position title for the shift (if applicable)","example":"Level 1 Helper"}}},"position_group":{"type":"object","properties":{"position_group_id":{"type":"string","description":"Employee position group id for shift","example":"1"},"title":{"type":"string","description":"Employee position group title for shift","example":"Position Group 1"}}},"is_clock_log_deleted":{"type":"string","description":"Display the date and time when clock log record is deleted (if applicable)","example":"2026-06-01 03:32:51"},"clock_comment_start":{"type":"string","description":"Clock log comment upon starting","example":"Starting 5 minutes early"},"clock_comment_end":{"type":"string","description":"Clock log comment upon finishing","example":"Finishing 5 minutes early"},"clock_start_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"clock_end_file_type":{"type":"string","description":"File type for image captured by clock","example":"jpg"},"leave_rule_id":{"type":"string","description":"Deprecated","example":""},"absent_comments":{"type":"string","description":"Deprecated","example":""},"document":{"type":"boolean","description":"Has this employee submitted document(s) for this shift?","enum":[true,false]},"did_not_work":{"type":"boolean","description":"If this employee did not work on this shift, this would be true","enum":[true,false]},"reason":{"type":"object","properties":{"reason_id":{"type":"string","description":"Id of absence reason from the list (if applicable); see '\/api\/v1\/reason-list' route","example":"2"},"reason":{"type":"string","description":"Reason of absence (if applicable); see '\/api\/v1\/reason-list' route","example":"Approved Leave"}}},"roster_shift_comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment left for this roster shift","example":"Please be available at 6:35 AM"},"type":{"type":"string","description":"Roster shift comment types","enum":["general","candidate_submitted"]},"user_id":{"type":"string","description":"User Id of the creator of the comment","example":"1115"},"roster_job_shift_candidate_id":{"type":"string","description":"Id of roster shift and employee in database","example":"3059"},"visible_to_employee":{"type":"integer","description":"Determine whether this comment is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[0,1]}}}},"timesheet_file":{"type":"string","description":"Path to submitted timesheet file","example":"\/secure\/documents\/timesheets-additional\/247"},"last_modified":{"type":"object","properties":{"user":{"type":"string","description":"Admin user name","example":"James Sampler"},"type":{"type":"string","description":"Event type","enum":["Approved","Auto-approved","Bulk adjusted end time","Created","Create unrostered","Declined","Edited","Leave","Pre-approved"]},"timestamp":{"type":"string","description":"Date and time when this record was last edited","example":"2026-06-01 03:32:51"}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"title":{"type":"string","description":"Allowance title","example":"Forklift Allowance"},"type":{"type":"string","description":"Allowance type","enum":["hourly","daily","hour (value by candidate)","km (value by candidate)","weekly","shift"]},"rates":{"type":"object","properties":{"label":{"type":"string","description":"Rate label","example":"Forklift Allowance"},"rate":{"type":"string","description":"Rate of the allowance","example":"0.550000"}}},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5},"award_title":{"type":"string","description":"The award title under which this allowance is based","example":"General Retail Industry Award"},"candidate_submitted":{"type":"string","description":"Is this submitted by employee?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}},"errors":{"type":"array","items":{"type":"object","properties":{"roster_shift_candidate_id":{"type":"string","description":"The id of the shift","example":"350"},"severity":{"type":"string","description":"Severity of the error","enum":["error","warning"]},"type":{"type":"string","description":"Error types","enum":["fatigue","upcoming_fatigue","employee-not-available","employee-not-available-time-based","shift-conflict","job-conflict","position-mis-match","position-not-set","candidate-archived","employee-not-set","leave-conflict","duration-exceeds-limit","zero-duration","negative-duration","timesheet-paid","maximum-weekly-hours-exceeded","shift-already-offered","maximum-weekly-ordinary-hours-exceeded"]},"label":{"type":"string","description":"Friendly description of the error types","example":"Employee is unavailable."},"created_at":{"type":"string","description":"Date and time when record is created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when record was last updated","example":"2026-06-01 03:32:51"},"available_time":{"type":"string","description":"Time when employee should be available","example":"[{\"date\":\"2020-08-31\",\"start\":\"2020-08-31 15:00\",\"end\":\"2020-08-31 23:00\"}]"}}}},"timesheet_status":{"type":"string","description":"Status of timesheet related to this shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Submitted\/Pending<\/td><\/tr><tr><td>1<\/td><td>Accepted<\/td><\/tr><tr><td>2<\/td><td>Invoiced<\/td><\/tr><tr><td>3<\/td><td>Declined<\/td><\/tr><tr><td>4<\/td><td>Paid<\/td><\/tr><\/table>","enum":["0","1","2","3","4"]},"available_id":{"type":"string","description":"Available timesheet id","example":"13916"},"is_holiday":{"type":"string","description":"Is shift on a public holiday?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>null<\/td><td>No Holiday<\/td><\/tr><tr><td>0<\/td><td>Treat as normal day, standard rules will apply<\/td><\/tr><tr><td>1<\/td><td>Set as public holiday, shift paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>Pay base (OTE) rate, no overtime or shift loading applies<\/td><\/tr><\/table>","enum":[null,0,1,2]},"employee_declined_status":{"type":"string","description":"Is employee declined?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>True<\/td><\/tr><tr><td>0<\/td><td>False<\/td><\/tr><\/table>","enum":["1","0"]},"approver_name":{"type":"string","description":"Approver\\'s name","example":"The Admin"},"approver_email":{"type":"string","description":"Approver\\'s email address (if shift was approved)","example":"admin@admin.com"},"supervisor_name":{"type":"string","description":"Supervisor name","example":"Doug Smith"},"supervisor_comment":{"type":"string","description":"Supervisor comment","example":null},"supervisor_unavailable_comment":{"type":"string","description":"Supervisor unavailable comment","example":null},"supervisor_unavailable":{"type":"string","description":"Supervisor unavailable status","example":null},"employee_first_name":{"type":"string","description":"Employee first name","example":"John"},"employee_surname":{"type":"string","description":"Employee surname","example":"Smith"},"employee_phone_number":{"type":"string","description":"Employee phone number","example":"0411111111"},"old_position":{"type":"object","properties":{"id":{"type":"integer","description":"Old position id","example":null},"title":{"type":"string","description":"Old position title","example":null}}},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Comment ID","example":123},"action":{"type":"string","description":"Action performed","example":"Break Taken"},"type":{"type":"string","description":"Type of comment","example":"attendance"},"reason":{"type":"string","description":"Reason for the comment","example":"Late break"},"roster_job_shift_break_id":{"type":"integer","description":"Roster job shift break ID","example":null}}}},"clock_log_questionnaire":{"type":"array","items":{"type":"object","properties":{"question_title":{"type":"string","description":"Title of the question","example":"Did you take a break?"},"answer":{"type":"string","description":"Answer to the question","example":"Yes"},"comment":{"type":"string","description":"Additional comment","example":"Break taken at 12:30"},"type":{"type":"string","description":"Type of question","example":"boolean"}}}},"clock_log_source":{"type":"string","description":"Clock log source","example":null},"attendance":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Attendance record ID","example":47425},"can_id":{"type":"integer","description":"Candidate ID","example":74},"employee_shift_id":{"type":"integer","description":"Employee shift ID","example":1837651},"job_id":{"type":"integer","description":"Job ID","example":null},"c_id":{"type":"integer","description":"Client ID","example":1},"leave_rule_id":{"type":"integer","description":"Leave rule ID","example":5556},"leave_rule":{"type":"object","properties":{"leave_rule_id":{"type":"integer","description":"Leave rule ID","example":5556},"leave_title":{"type":"string","description":"Leave title","example":"Annual Leave"},"withhold_tax":{"type":"integer","description":"Withhold tax flag","example":0},"payment_summmary":{"type":"integer","description":"Payment summary flag","example":0},"super":{"type":"integer","description":"Superannuation flag","example":0}}},"reason_id":{"type":"integer","description":"Reason ID","example":2},"reason":{"type":"object","properties":{"id":{"type":"integer","description":"Reason ID","example":2},"title":{"type":"string","description":"Reason title","example":"Sick"},"created_at":{"type":"string","description":"Created at timestamp","example":"2018-08-23 11:37:51"},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2018-08-23 11:38:13"},"type":{"type":"integer","description":"Reason type","example":1}}},"absent_comment":{"type":"string","description":"Absent comment","example":""},"ato_reason":{"type":"string","description":"ATO reason","example":null},"attendance_date":{"type":"string","description":"Attendance date","example":"2025-09-22"},"authority_id":{"type":"integer","description":"Authority ID","example":1},"candidate_submitted":{"type":"integer","description":"Candidate submitted flag","example":0},"clock_id":{"type":"integer","description":"Clock ID","example":null},"created_at":{"type":"string","description":"Created at timestamp","example":"2025-09-22 11:25:53"},"deleted_at":{"type":"string","description":"Deleted at timestamp","example":null},"is_pending_termination":{"type":"integer","description":"Is pending termination flag","example":0},"is_termination":{"type":"integer","description":"Is termination flag","example":0},"leave_pay_nopay":{"type":"string","description":"Leave pay\/no pay","example":""},"leave_rule_amount":{"type":"string","description":"Leave rule amount","example":"0.0000"},"leave_rule_processed_by_approve_shift":{"type":"integer","description":"Leave rule processed by approve shift flag","example":0},"payg_gen_type":{"type":"integer","description":"PAYG generation type","example":null},"scheduled_termination_date":{"type":"string","description":"Scheduled termination date","example":null},"subclass_id":{"type":"integer","description":"Subclass ID","example":69},"termination_data":{"type":"string","description":"Termination data","example":null},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2025-09-22 11:25:53"}}}},"costing":{"type":"array","items":{"type":"object"}},"shift_costing":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Shift costing record ID","example":175},"invoicing_po_id":{"type":"integer","description":"Invoicing PO ID","example":null},"shift_candidate_id":{"type":"integer","description":"Shift candidate ID","example":1837651},"user_id":{"type":"integer","description":"User ID","example":1},"custom_po_label":{"type":"string","description":"Custom PO label","example":"Coaching"},"is_override":{"type":"integer","description":"Is override flag","example":1},"start":{"type":"string","description":"Costing start time","example":"2025-09-22 12:00:00"},"end":{"type":"string","description":"Costing end time","example":"2025-09-22 14:00:00"},"created_at":{"type":"string","description":"Created at timestamp","example":"2025-09-22 11:05:27"},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2025-09-22 11:05:27"},"deleted_at":{"type":"string","description":"Deleted at timestamp","example":"2025-09-22 11:05:27"}}}},"leave_application_ids":{"type":"array","items":{"type":"integer"}},"leave_application_hours":{"type":"array","items":{"type":"number"}},"shiftLeave":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Leave application ID","example":101},"shift_candidate_id":{"type":"integer","description":"Shift candidate ID","example":1837651},"leave_type":{"type":"string","description":"Type of leave","example":"Annual Leave"},"hours":{"type":"number","description":"Number of leave hours","example":8},"start":{"type":"string","description":"Leave start time","example":"2025-09-22 12:00:00"},"end":{"type":"string","description":"Leave end time","example":"2025-09-22 14:00:00"},"status":{"type":"string","description":"Leave application status","example":"Approved"},"created_at":{"type":"string","description":"Created at timestamp","example":"2025-09-22 11:05:27"},"updated_at":{"type":"string","description":"Updated at timestamp","example":"2025-09-22 11:05:27"},"deleted_at":{"type":"string","description":"Deleted at timestamp","example":"2025-09-22 11:05:27"}}}},"sum_leave_application_hours":{"type":"number","description":"Sum of leave application hours","example":0},"approve_shift_log":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Approve shift log id","example":1234},"action":{"type":"string","description":"Action type","example":"Auto-approved"},"roster_job_shift_candidate_id":{"type":"integer","description":"Roster job shift candidate id","example":1234},"clock_id":{"type":"integer","description":"Clock log id","example":1234},"user_id":{"type":"integer","description":"User id","example":1234},"employee_id":{"type":"integer","description":"Employee id","example":1234},"position_id":{"type":"integer","description":"Position id","example":null},"position_group_id":{"type":"integer","description":"Position group id","example":6},"branch_id":{"type":"integer","description":"Branch id","example":1},"status":{"type":"integer","description":"Status","example":5},"start":{"type":"string","description":"Start time","example":"2025-09-08 09:30:00"},"end":{"type":"string","description":"End time","example":"2025-09-08 13:00:00"},"break_length":{"type":"number","format":"float","example":0.5,"description":"Break duration"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]},"created_at":{"type":"string","description":"Created at","example":"2025-09-08 13:07:19"},"updated_at":{"type":"string","description":"Updated at","example":"2025-09-08 13:07:20"},"work_app_user_id":{"type":"integer","description":"Work app user id","example":null},"is_processed":{"type":"integer","description":"Is processed","example":1},"is_holiday":{"type":"string","description":"Is holiday","example":null},"available_id":{"type":"integer","description":"Available id","example":1234},"user":{"type":"object","properties":{"id":{"type":"integer","description":"User id","example":1234},"name":{"type":"string","description":"User name","example":"John Smith"},"email":{"type":"string","description":"User email","example":"john.smith@example.com"},"created_at":{"type":"string","description":"Created at","example":"2025-06-25 14:37:37"},"updated_at":{"type":"string","description":"Updated at","example":"2025-09-16 09:30:03"},"integration_id":{"type":"string","description":"Integration id","example":null},"deleted_at":{"type":"string","description":"Deleted at","example":null}}}}}},"created_at":{"type":"string","description":"Created at","example":"2025-07-29 12:09:16"}}}},"meta":{"type":"object","properties":{"pagination":{"type":"object","properties":{"current_page":{"type":"integer","example":5},"per_page":{"type":"integer","example":200},"total":{"type":"integer","example":878},"last_page":{"type":"integer","example":5},"has_more_pages":{"type":"boolean","example":false}}}}}}}}}}},"x-hideTryItPanel":true}}},"components":{"schemas":{"PayrollLedgerMapReportRequest":{"type":"object","properties":{"from_date":{"type":"string","description":"The start date of the report","example":"2026-06-01"},"to_date":{"type":"string","description":"The end date of the report","example":"2026-06-01"},"cash_basis":{"type":"boolean","description":"Whether to use cash basis accounting or not","example":false},"employee_ids":{"type":"array","description":"Employee IDs that this report will filter to","items":{"type":"int","example":[1,2,3]}},"paying_entity_id":{"type":"int","description":"The ID of the paying entity you want to get the report for","example":1}}},"StoreCostCodeRequest":{"type":"object","properties":{"cost_code":{"type":"string","description":"New cost code name. This must be unique in the system.","example":"Holiday bonus code"},"operation_ids":{"type":"array","items":{"type":"int","description":"Operation IDs that this code code will apply to","example":86}},"applies_to_all":{"type":"boolean","description":"Does this cost code apply to every operations?","enum":[true,false]}}},"UpdateCostCodeRequest":{"type":"object","properties":{"operation_ids":{"type":"array","items":{"type":"int","description":"Operation IDs that this code will apply to (only if applies_to_all set to false)","example":36}},"applies_to_all":{"type":"boolean","description":"Does this cost code apply to all operations?","enum":[true,false]},"cost_code":{"type":"string","description":"Cost code name. This must match exactly to an existing cost code \/ purchase order in the system","example":"Holiday bonus code"}}},"ShiftHistoryTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"shift-history"},"attributes":{"type":"object","properties":{"roster_shift_candidate_id":{"type":"int","description":"Roster Shift Candidate Id","example":3},"parent_roster_shift_candidate_id":{"type":"int","description":"Parent Roster Shift Candidate Id if applicable","example":3},"admin_id":{"type":"int","description":"Admin id who performed the action","example":134},"admin_name":{"type":"string","description":"Admin name who performed the action","example":"John Doe"},"employee_id":{"type":"int","description":"Employee id associated with this action","example":134},"employee_name":{"type":"string","description":"Employee name associated with this action","example":"John Smith"},"type":{"type":"int","description":"Shift history type","example":1},"typeLabel":{"type":"string","description":"Shift history type label","example":"ROSTER_SHIFT_CREATED"},"shiftHistoryEntryGroupType":{"type":"string","description":"Shift history group type","example":"Roster"},"created_at":{"type":"string","description":"Shift history record creation time","example":"2026-01-01 10:00:00"},"details":{"type":"object","properties":{"id":{"type":"int","description":"id of the shift history detail record","example":12},"type":{"type":"int","description":"Shift history detail type","example":1},"typeLabel":{"type":"int","description":"Shift history detail type label","example":"SHIFT_START"}}}}}}},"TagGroupTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"tag-group"},"attributes":{"type":"object","properties":{"name":{"type":"string","description":"Name \/ label of the tag group","example":"Hard Worker"},"hide_tag_in":{"type":"string","description":"Is this tag group being hidden in create job and roster?"},"created_at":{"type":"string","description":"Date of when the tag was created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date of when the tag was last updated","example":"2026-06-01 03:32:51"}}}}},"EmployeeShiftTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-shift"},"attributes":{"type":"object","properties":{"shift_id":{"type":"integer","description":"Shift Id","example":203450},"employee_id":{"type":"string","description":"Employee id","example":"39"},"position_id":{"type":"string","description":"Position id","example":"32"},"position_group_id":{"type":"string","description":"Position group id for this shift (if applicable)","example":"1"},"offer_status":{"type":"string","description":"Offer status for this employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>to send<\/td><\/tr><tr><td>1<\/td><td>sent<\/td><\/tr><tr><td>2<\/td><td>accepted<\/td><\/tr><tr><td>3<\/td><td>declined<\/td><\/tr><tr><td>4<\/td><td>cancelled<\/td><\/tr><tr><td>5<\/td><td>reassigned<\/td><\/tr><tr><td>6<\/td><td>created by employee<\/td><\/tr><\/table>","enum":["0","1","2","3","4","5","6"]},"offer_status_label":{"type":"string","description":"Offer status label, corresponds to 'offer_status'","enum":["Pending","Offer Sent","Accepted","Declined","Cancelled","Reassigned"]},"attendance_status":{"type":"string","description":"Attendance status of this employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>default<\/td><\/tr><tr><td>1<\/td><td>cancelled by manager<\/td><\/tr><tr><td>2<\/td><td>cancelled by employee<\/td><\/tr><tr><td>3<\/td><td>employee sick<\/td><\/tr><tr><td>4<\/td><td>employee on holidays<\/td><\/tr><tr><td>5<\/td><td>employee no show<\/td><\/tr><\/table>","enum":["0","1","2","3","4","5"]},"attendance_status_label":{"type":"string","description":"Attendance status label, corresponds to 'attendance_status'","enum":["Cancelled by manager","Cancelled by employee","Sick","On holidays","No Show"]},"offer_id":{"type":"string","description":"Offer record id","example":"1435"},"breaks":{"type":"array","description":"List of breaks for this shift","items":{"type":"object","properties":{"id":{"type":"integer","description":"Break identifier (null for employee-created breaks)","nullable":true,"example":123},"start":{"type":"string","description":"Break start time","example":"12:00:00"},"length":{"type":"string","description":"Break duration in HH:MM format","example":"00:30"},"break_length":{"type":"float","description":"Break duration in decimal hours","example":0.5},"break_is_payable":{"type":"boolean","description":"Whether this break is paid or unpaid","example":false},"break_is_taken":{"type":"integer","description":"Whether the break was taken (0 = not taken, 1 = taken)","enum":[0,1],"example":1},"break_is_edited_by_employee":{"type":"boolean","description":"Whether this break was edited by the employee","example":false},"break_is_created_by_employee":{"type":"boolean","description":"Whether this break was created by the employee","example":false},"reason":{"type":"string","description":"Reason for the break (if provided)","example":""}}}},"break_type_selector":{"type":"array","description":"Available break types for this shift (if client break settings are configured)","items":{"type":"object","properties":{"id":{"type":"integer","description":"Break type identifier","enum":[0,1],"example":0},"label":{"type":"string","description":"Break type label (e.g., \"Lunch break\", \"Tea break\")","example":"Lunch break"},"detail_type":{"type":"string","description":"Break detail type configuration","example":"required"},"require_reason":{"type":"boolean","description":"Whether a reason is required when selecting this break type","example":true}}},"nullable":true},"branch_id":{"type":"string","description":"Roster branch id","example":"29"},"c_id":{"type":"string","description":"Operation id","example":"21"},"operation_name":{"type":"string","description":"Trade name of the client operation","nullable":true,"example":"Acme Corporation"},"roster_name":{"type":"string","description":"Title of the roster branch","nullable":true,"example":"Downtown Branch"},"shift_start":{"type":"string","description":"Date and time of shift start time","example":"2026-06-01 03:32:50"},"shift_end":{"type":"string","description":"Date and time of shift end time","example":"2026-06-01 03:32:50"},"roster_shift_start":{"type":"string","description":"Date and time of shift start time, as defined in the roster","example":"2026-06-01 03:32:50"},"roster_shift_end":{"type":"string","description":"Date and time of shift end time, as defined in the roster","example":"2026-06-01 03:32:50"},"clock_log_shift_start":{"type":"string","description":"Date and time of shift start time, as defined in the clock log","example":"2026-06-01 03:32:50"},"clock_log_shift_end":{"type":"string","description":"Date and time of shift end time, as defined in the clock log","example":"2026-06-01 03:32:50"},"unpaid_break_decimal":{"type":"string","description":"Amount of unpaid break (hours)","example":"1.5"},"unpaid_break_label":{"type":"string","description":"Unpaid break label","example":"Casual Leave"},"shift_duration_decimal":{"type":"string","description":"Shift duration","example":"8.5"},"shift_duration_label":{"type":"string","description":"Shift duration (human-readable)","example":"8:00"},"until_required":{"type":"string","description":"Flag to indicate if employee is needed until shift ends\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"is_deleted":{"type":"string","description":"Flag to indicate if this shift employee record has been deleted\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"holiday_payment_basis":{"type":"string","description":"Is shift on a public holiday?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>null<\/td><td>no holiday<\/td><\/tr><tr><td>0<\/td><td>treat as normal day, standard rules will apply<\/td><\/tr><tr><td>1<\/td><td>set as public holiday, shift paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>pay base (OTE) rate, no overtime or shift loading applies<\/td><\/tr><\/table>","enum":[null,0,1,2]},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance id","example":"118"},"allowance_rate_id":{"type":"string","description":"Allowance rate id","example":"174"},"allowance_qty":{"type":"integer","description":"Number of unit of allowance requested for this shift (e.g.: X km of travel allowance)","example":5}}}},"document":{"type":"string","description":"Flag to show if employee has submitted documents for this shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"verification":{"type":"string","description":"Verification status of the shift employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>not yet verified<\/td><\/tr><tr><td>1<\/td><td>approved<\/td><\/tr><tr><td>2<\/td><td>rejected<\/td><\/tr><tr><td>3<\/td><td>pre-approved<\/td><\/tr><tr><td>4<\/td><td>on leave<\/td><\/tr><tr><td>5<\/td><td>automatically approved<\/td><\/tr><tr><td>6<\/td><td>submitted by employee<\/td><\/tr><tr><td>7<\/td><td>locked shift<\/td><\/tr><\/table>","enum":["0","1","2","3","4","5","6","7"]},"has_clock_log":{"type":"string","description":"Number of clock log records","example":"5"},"has_approved_shift":{"type":"string","description":"Flag to indicate if employee has approved shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"modified_by_as":{"type":"string","description":"Flag to indicate if this roster shift employee record has been modified by Approve Shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"did_not_work":{"type":"string","description":"Flag that indicates if employee did not work\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"created_at":{"type":"string","description":"Date and time when this shift employee record was created","example":"2026-06-01 03:32:50"},"updated_at":{"type":"string","description":"Date and time when this shift employee record was last updated","example":"2026-06-01 03:32:50"},"timesheet_status":{"type":"string","description":"Status of the timesheet\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>pending<\/td><\/tr><tr><td>1<\/td><td>accepted<\/td><\/tr><tr><td>2<\/td><td>invoiced<\/td><\/tr><tr><td>3<\/td><td>declined<\/td><\/tr><tr><td>4<\/td><td>paid<\/td><\/tr><\/table>","enum":["0","1","2","3","4"]},"custom_position_title":{"type":"string","description":"Optional position title for the shift (if applicable)","example":"Adam's Position (Level 1)"},"is_branch_verification_required":{"type":"boolean","description":"Whether branch verification is required for this shift","example":true}}},"relationships":{"type":"object","properties":{"roster-shift":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":57},"type":{"type":"integer","description":"Type of side loaded relationship","example":"roster-shift"}}}}},"clock_log":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":9},"type":{"type":"integer","description":"Type of side loaded relationship","example":"clock_log"}}}}},"employee-attendance":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":97},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-attendance"}}}}}},"branch":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":81},"type":{"type":"integer","description":"Type of side loaded relationship","example":"branch"}}}}},"employee":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":67},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee"}}}}},"position":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":28},"type":{"type":"integer","description":"Type of side loaded relationship","example":"position"}}}}},"position-group":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":22},"type":{"type":"integer","description":"Type of side loaded relationship","example":"position-group"}}}}},"employee-shift-error":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":9},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-shift-error"}}}}}},"roster-shift-comment":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":29},"type":{"type":"integer","description":"Type of side loaded relationship","example":"roster-shift-comment"}}}}}},"employee-shift-document":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":68},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-shift-document"}}}}}},"employee-shift-costing":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":50},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-shift-costing"}}}}}}}}}},"ShiftTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"roster-shift"},"attributes":{"type":"object","properties":{"job_criteria_id":{"type":"integer","description":"Job criteria Id","example":1001},"shift_start":{"type":"integer","description":"Shift start time","example":"2026-06-01 03:32:50"},"position_id":{"type":"integer","description":"Position Id","example":100},"shift_end":{"type":"string","description":"Shift end time","example":"2026-06-01 03:32:50"},"shift_status":{"type":"integer","description":"Shift status\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>unfilled<\/td><\/tr><tr><td>1<\/td><td>ready<\/td><\/tr><tr><td>2<\/td><td>complete<\/td><\/tr><tr><td>3<\/td><td>active<\/td><\/tr><tr><td>4<\/td><td>empty<\/td><\/tr><\/table>","enum":[0,1,2,3,4]},"is_filled":{"type":"boolean","description":"Is this job filled?","enum":[true,false]},"break_length":{"type":"string","description":"Number of hours of break time, in decimal format","example":"0.5"},"total_required":{"type":"integer","description":"Total people required for this job","example":1},"total_offered":{"type":"integer","description":"Total offers sent","example":1},"total_assigned":{"type":"integer","description":"Total number of people assigned","example":1},"candidates":{"type":"array","items":{"type":"object","properties":{"shift_id":{"type":"integer","description":"Shift Id","example":1102},"can_id":{"type":"integer","description":"Employee Id","example":980},"subclass_id":{"type":"integer","description":"Position Id","example":42},"status":{"type":"integer","description":"Offer status (0: Unpublished, 1: Offered, 2: Published, 3: Declined, 4: Cancelled, 5: Reassigned, 6: Created)","enum":[0,1,2,3,4,5,"Created"]},"offer_id":{"type":"integer","description":"Offer Id","example":53},"available_id":{"type":"integer","description":"Available timesheet Id","example":247000},"manual":{"type":"boolean","description":"Manually created?","enum":[true,false]},"position_group_id":{"type":"integer","description":"Position group Id","example":10},"deleted_at":{"type":"string","description":"Timestamp when this record was deleted","example":"2026-06-01 03:32:50"},"verification":{"type":"boolean","description":"Is shift verified?","enum":[true,false]},"verified_by_id":{"type":"integer","description":"Verified by this user Id","example":0},"comments":{"type":"string","description":"Comments on this roster employee","example":"Test"},"attendance_status":{"type":"integer","description":"Attendance status code (Default (0), Cancelled by manager (1), Cancelled by employee (2), Employee sick (3), Employee on holidays (4), Employee no show (5)","enum":[0,1,2,3,4,5]},"until_required":{"type":"boolean","description":"Flag to signify if employee is needed until shift ends","enum":[true,false]},"leave_rule_id":{"type":"integer","description":"Leave rule Id if applicable","example":20},"absent_comments":{"type":"string","description":"Deprecated","example":"Deprecated"},"reason_id":{"type":"integer","description":"Absence reason idf rom the list (if applicable); see '\/api\/v1\/reason-list' route","example":2},"approve_shift_start":{"type":"string","description":"Approve shift start timestamp","example":"2026-06-01 03:32:50"},"approve_shift_end":{"type":"string","description":"Approve shift end timestamp","example":"2026-06-01 03:32:50"},"old_position_id":{"type":"integer","description":"Old position id (if applicable)","example":0},"approve_shift_break_length":{"type":"string","description":"Approve shift break length, in decimal format","example":"0.50"},"reprocess":{"type":"boolean","description":"Has this been reprocessed?","enum":[true,false]},"is_unrostered":{"type":"boolean","description":"Is this unrostered?","enum":[true,false]},"approve_version":{"type":"integer","description":"Random number","example":532395},"is_holiday":{"type":"boolean","description":"Is this employee on holiday?","enum":[true,false]},"copied_from_shift_id":{"type":"integer","description":"Shift Id where this was copied from (if applicable)","example":112815},"copied_from_shift_candidate_id":{"type":"integer","description":"Shift candidate Id where this was copied from (if applicable)","example":114326},"created_at":{"type":"string","description":"Record creation timestamp","example":"2026-06-01 03:32:50"},"updated_at":{"type":"string","description":"Record updated timestamp","example":"2026-06-01 03:32:50"},"modified_by_as":{"type":"boolean","description":"Flag to indicate if this roster shift employee record has been modified by approve shift process","enum":[true,false]},"last_modified_at":{"type":"string","description":"Timestamp of last event","example":"2026-06-01 03:32:50"},"last_modified_by":{"type":"integer","description":"Id of user that modified this shift","example":8},"last_modified_type":{"type":"string","description":"Last modified action type","enum":["Approved","Pre-approved","Auto-approved","Declined","Created","Create unrostered","Edited","Leave","Remove leave application link","Bulk adjusted end time"]},"did_not_work":{"type":"boolean","description":"Did this roster shift candidate work?","enum":[true,false]},"has_approved_shift":{"type":"boolean","description":"Does this roster shift candidate have approve shift?","enum":[true,false]}}}},"deleted":{"type":"boolean","description":"Is this shift deleted?","enum":[true,false]}}}}},"ClockLogTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"clock_log"},"attributes":{"type":"object","properties":{"location_id":{"type":"string","description":"Operation id","example":"15"},"employee_id":{"type":"string","description":"Employee id","example":"914"},"job_id":{"type":"string","description":"Job id","example":"17"},"shift_id":{"type":"string","description":"Shift id","example":"29400"},"shift_start":{"type":"string","description":"Shift start time","example":"2026-06-01 03:32:50"},"shift_end":{"type":"string","description":"Shift end time","example":"2026-06-01 03:32:50"},"break_start":{"type":"string","description":"Break start time","example":"2026-06-01 03:32:50"},"break_end":{"type":"string","description":"Break end time","example":"2026-06-01 03:32:50"},"breaks":{"type":"array","description":"An array of shift multi-breaks","items":{"type":"object","properties":{"start":{"type":"string","description":"Clock log break start time","example":"3:32am"},"end":{"type":"string","description":"Clock log break end time","example":"4:02am"},"break_is_payable":{"type":"boolean","description":"Flag to indicate if break is unpaid (0) or paid (1)","example":1},"rostered_break_length":{"type":"float","description":"A decimal representation of rostered break length duration","example":0.5},"clocked_break_length":{"type":"float","description":"A decimal representation of clocked break length duration","example":0.5},"in_latitude":{"type":"string","description":"Location latitude for start of shift break","example":"-37.99244760"},"in_longitude":{"type":"string","description":"Location longitude for start of shift break","example":"145.10251075"},"out_latitude":{"type":"string","description":"Location latitude for end of shift break","example":"-37.99244760"},"out_longitude":{"type":"string","description":"Location longitude for end of shift break","example":"145.10251075"}}}},"created_at":{"type":"string","description":"Date and time when this record was created","example":"2026-06-01 03:32:50"},"updated_at":{"type":"string","description":"Date and time when this record was last updated","example":"2026-06-01 03:32:50"},"operation_id":{"type":"string","description":"Operation id","example":"15"},"branch_id":{"type":"string","description":"Roster branch id","example":"114"},"shift_start_file_type":{"type":"string","description":"File type for clock picture taken at shift start","example":"jpg"},"shift_end_file_type":{"type":"string","description":"File type for clock picture taken at shift end","example":"jpg"},"comment_start":{"type":"string","description":"Employee comment for start of shift","example":"Asked to start early"},"comment_end":{"type":"string","description":"Employee comment for end of shift","example":"Overtime"},"in_latitude":{"type":"string","description":"Location latitude for start of shift","example":"-37.99244760"},"in_longitude":{"type":"string","description":"Location longitude for start of shift","example":"145.10251075"},"out_latitude":{"type":"string","description":"Location latitude for end of shift","example":"-37.99244760"},"out_longitude":{"type":"string","description":"Location longitude for end of shift","example":"145.10251075"},"clock_in_submitted_by":{"type":"string","description":"App type used when clocking in","enum":["employee-app","clock-app"]},"clock_out_submitted_by":{"type":"string","description":"App type used when clocking out","enum":["employee-app","clock-app"]},"duration_decimal":{"type":"string","description":"Shift duration in decimal format","example":"7.30"},"duration_human":{"type":"string","description":"Shift duration in human-readable format","example":"7hrs30min"},"deleted_at":{"type":"string","description":"Record deleted timestamp","example":"2026-06-01 03:32:50"},"questionnaire_question_title":{"type":"string","description":"Questionnaire title","example":"Have PPE?"},"questionnaire_answer":{"type":"string","description":"Questionnaire answer","example":"Example answer"},"questionnaire_comment":{"type":"string","description":"Questionnaire comment","example":"Comment"},"source":{"type":"string","nullable":true,"description":"Source of the clock log entry","example":"csv_import"}}},"relationships":{"type":"object","properties":{"branch":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":26},"type":{"type":"integer","description":"Type of side loaded relationship","example":"branch"}}}}},"client":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":64},"type":{"type":"integer","description":"Type of side loaded relationship","example":"client"}}}}},"employee":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":2},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee"}}}}},"roster_shift_breaks":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":53},"type":{"type":"integer","description":"Type of side loaded relationship","example":"roster_shift_breaks"}}}}}}}}}},"RosterBranchTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"branch"},"attributes":{"type":"object","properties":{"client_id":{"type":"string","description":"Operation ID related to the roster branch","example":"2"},"loc_id":{"type":"string","description":"Location ID of the roster branch as specified in Platform Settings -> Locations Admin page","example":"1"},"state_id":{"type":"string","description":"State ID of the location of the roster branch\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>ACT<\/td><\/tr><tr><td>2<\/td><td>NSW<\/td><\/tr><tr><td>3<\/td><td>NT<\/td><\/tr><tr><td>4<\/td><td>QLD<\/td><\/tr><tr><td>5<\/td><td>SA<\/td><\/tr><tr><td>6<\/td><td>TAS<\/td><\/tr><tr><td>7<\/td><td>VIC<\/td><\/tr><tr><td>8<\/td><td>WA<\/td><\/tr><\/table>","enum":[1,2,3,4,5,6,7,8]},"name":{"type":"string","description":"Roster branch name","example":"Morning Shift for Store A"},"short_label":{"type":"string","description":"System-generated label for this roster branch","example":"'MSfSA' for 'Morning Shift for Store A'"},"street":{"type":"string","description":"Street name of the roster branch location","example":"241 Queen Street"},"suburb":{"type":"string","description":"Suburb of the roster branch location","example":"Milton"},"postcode":{"type":"string","description":"Postcode of the roster branch location","example":"4001"},"created_at":{"type":"string","description":"Datetime string of when the roster branch was created","example":"2026-06-01 03:32:50"},"contact_name":{"type":"string","description":"Contact name for the roster branch","example":"John Smith"},"contact_number":{"type":"string","description":"Contact number for the roster branch","example":"0412345678"},"po":{"type":"string","description":"Purchase Order or Cost Code of the roster branch","example":"PO-20192"},"ordinary_hours":{"type":"number","description":"Maximum ordinary hours per day for this roster branch","example":"6.5"},"roster_bg_color":{"type":"string","description":"Custom colour code for roster background; can be in rgb format or css colour name","example":"#000000"},"note":{"type":"string","description":"Roster branch note, 255 characters maximum","example":"Morning roster for shop A"},"note_created_by":{"type":"string","description":"User id of the user that created the note for this roster branch","example":"93"},"note_created_at":{"type":"string","description":"Datetime string of when the roster note was created","example":"2026-06-01 03:32:50"},"note_visible_to_employee":{"type":"boolean","description":"Setting value whether roster branch note is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","example":1},"location_clock_latitude":{"type":"number","description":"Latitude of the roster branch clock location","example":-19.3130024},"location_clock_longitude":{"type":"number","description":"Longitude of the roster branch clock location","example":146.7291969},"location_clock_radius":{"type":"number","description":"The radius (in m) from roster location, where employees can safely clock in from their own device using foundU Employee app","example":5}}},"relationships":{"type":"object","properties":{"client":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":23},"type":{"type":"integer","description":"Type of side loaded relationship","example":"client"}}}}},"location":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":18},"type":{"type":"integer","description":"Type of side loaded relationship","example":"location"}}}}}}}}},"ClientTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"client"},"attributes":{"type":"object","properties":{"external_id":{"type":"string","description":"Operation External Id","example":"My Operation"},"name":{"type":"string","description":"Operation name","example":"Chermside Operation"},"short_label":{"type":"string","description":"System generated; returns first character of every every word from Operation name","example":"CO"},"trade_name":{"type":"string","description":"Operation's trade name","example":"Reece"},"abn_acn":{"type":"string","description":"Operation's ABN or ACN","example":"12345678901"},"postal_address":{"type":"string","description":"Operation's postal address","example":"523 Queen Street"},"office_address":{"type":"string","description":"Operation office address","example":"523 Queen Street"},"phone":{"type":"string","description":"Operation phone number","example":"33001234"},"fax":{"type":"string","description":"Operation fax number","example":"30001000"},"url":{"type":"string","description":"Operation's website url (optional)","example":"https:\/\/www.google.com.au"},"status":{"type":"string","description":"Operation status within the system","enum":["Available","Unavailable","Pending","Unverified","Declined","Archived","Prospective"]},"office_code":{"type":"string","description":"Operation office code ID","example":"8"},"office_code_label":{"type":"string","description":"Operation office code label","example":"Admin Ops"},"color":{"type":"string","description":"Operation homepage color theme","example":"#FF00FF"},"created_at":{"type":"string","description":"Timestamp of when the operation was created","example":"2026-06-01 03:32:51"},"position_group_search":{"type":"string","description":"Toggle whether this operation uses position or position group for search\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Position<\/td><\/tr><tr><td>1<\/td><td>Position group<\/td><\/tr><\/table>","enum":["1","0"]},"state":{"type":"string","description":"Operation state","example":"VIC"},"statement_cycle":{"type":"string","description":"Statement cycle\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Weekly<\/td><\/tr><tr><td>2<\/td><td>Fortnightly<\/td><\/tr><tr><td>20<\/td><td>Advance\/arrears<\/td><\/tr><\/table>","enum":["1","2","20"]},"first_statement_week_end":{"type":"string","description":"First week end of the statement","example":"2026-06-01 03:32:51"},"rep_name":{"type":"string","0":"description","1":"Operation manager name","example":"John Doe"}}},"relationships":{"type":"object","properties":{"operation-tags":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":27},"type":{"type":"integer","description":"Type of side loaded relationship","example":"operation-tags"}}}}}}}}}},"OperationTagTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"operation-tags"},"attributes":{"type":"object","properties":{"name":{"type":"string","description":"The name of the operation tag","example":"Operation Tag"},"tag_group_id":{"type":"integer","description":"The id of the operation tag's tag group","example":123},"tag_group_label":{"type":"string","description":"The label of the operation tag's tag group"},"created_at":{"type":"string","description":"Date and time when the tag was created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when the tag was last updated","example":"2026-06-01 03:32:51"}}}}},"LocationTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"location"},"attributes":{"type":"object","properties":{"state_id":{"type":"string","description":"State ID of the location of the roster branch\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>ACT<\/td><\/tr><tr><td>2<\/td><td>NSW<\/td><\/tr><tr><td>3<\/td><td>NT<\/td><\/tr><tr><td>4<\/td><td>QLD<\/td><\/tr><tr><td>5<\/td><td>SA<\/td><\/tr><tr><td>6<\/td><td>TAS<\/td><\/tr><tr><td>7<\/td><td>VIC<\/td><\/tr><tr><td>8<\/td><td>WA<\/td><\/tr><\/table>","example":"'4' for QLD"},"location":{"type":"string","description":"Location name","example":"Reece QLD"},"state":{"type":"string","description":"State name (abbreviated)","enum":["ACT","NSW","NT","QLD","SA","TAS","VIC","WA"]}}}}},"EmployeeTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee"},"attributes":{"type":"object","properties":[]}}},"RosterShiftBreakTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"roster_shift_breaks"},"attributes":{"type":"object","properties":{"id":{"type":"integer","description":"Roster shift break ID","example":6924},"roster_job_shift_id":{"type":"integer","description":"Roster job shift ID","example":3167},"start":{"type":"string","description":"Break start timestamp","example":"2025-06-25 14:00:00"},"break_length":{"type":"number","format":"float","description":"Length of break in hours","example":0.5},"break_is_payable":{"type":"boolean","description":"Whether this break is payable","example":true}}}}},"ShiftAttendanceTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-attendance"},"attributes":{"type":"object","properties":{"leave_rule_id":{"type":"integer","description":"Leave rule id, if applicable to this attendance record","example":5555},"can_id":{"type":"integer","description":"Employee Id","example":10},"employee_shift_id":{"type":"integer","description":"Shift Id","example":100},"leave_title":{"type":"string","description":"Leave title, if applicable to this record","example":"Sick Leave"},"leave_date":{"type":"string","description":"Leave date","example":"2026-06-01"},"leave_day":{"type":"string","description":"Day name","example":"Mon"},"leave_rule_amount":{"type":"number","description":"Amount of leave (if applicable) in decimal hours","example":3.75},"comment":{"type":"string","description":"Comment","example":"Medical certificate received"}}}}},"RosterPositionTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"position"},"attributes":{"type":"object","properties":{"id":{"type":"integer","description":"Position Id","example":105},"name":{"type":"string","description":"Position name","example":"Barista (Level 1)"},"is_position_group":{"type":"boolean","description":"Is this a position group?","enum":[true,false]}}}}},"RosterPositionGroupTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"position-group"},"attributes":{"type":"object","properties":[]}}},"EmployeeShiftErrorTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-shift-error"},"attributes":{"type":"object","properties":[]}}},"RosterShiftCommentTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"roster-shift-comment"},"attributes":{"type":"object","properties":{"comment":{"type":"string","description":"Comment","example":"Awaiting clarification"},"type":{"type":"string","description":"Comment type","example":"general"},"employee_shift_id":{"type":"integer","description":"Employee shift Id","example":3167},"user_id":{"type":"integer","description":"Employee Id","example":307},"visible_to_employee":{"type":"boolean","description":"Is this comment visible to employee?","enum":[true,false]},"creator_username":{"type":"string","description":"Comment creator username (admin users)","example":"Admin 1"},"creator_name":{"type":"string","description":"Comment creator name (admin users)","example":"John Q"},"created_at":{"type":"string","description":"Record created timestamp","example":"2026-06-01 03:32:50"}}}}},"EmployeeShiftDocumentTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-shift-document"},"attributes":{"type":"object","properties":{"filename":{"type":"string","description":"Document filename","example":""},"creator":[],"candidate_submitted":[]}}}},"EmployeeShiftCostingTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-shift-costing"},"attributes":{"type":"object","properties":{"start":{"type":"string","description":"Date and time of the start of costing period","example":"2026-06-01 03:32:50"},"end":{"type":"string","description":"Date and time of the end of costing period","example":"2026-06-01 03:32:50"},"includes_break":{"type":"string","description":"Flag to indicate if the costing includes break time\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"custom_po_label":{"type":"string","description":"Custom Purchase Order \/ Cost Code for this roster shift","example":"Cost Code 2"},"invoicing_po":{"type":"string","description":"Id of operation's invoicing Purchase Order \/ Cost Code","example":"1"},"creator":{"type":"string","description":"Admin user id for this roster costing","example":"255"}}}}},"FindEmployeesMockShiftRequest":{"type":"object","properties":{"branch_id":{"type":"integer","description":"Roster branch id to be queried","example":119},"shift_start":{"type":"string","description":"Shift start time to be queried","example":"2026-06-01 03:32:50"},"shift_end":{"type":"string","description":"Shift end time to be queried","example":"2026-06-01 03:32:50"},"position_id":{"type":"integer","description":"Position id to be searched within the shifts","example":61},"position_group_id":{"type":"integer","description":"Position group id to be searched within the shifts","example":100},"can_id":{"type":"integer","description":"Candidate id to limit results to a single employee","example":691},"date_start":{"type":"string","description":"Date of start of shift to be searched","example":"2026-06-01"},"date_end":{"type":"string","description":"Date of end of shift to be searched","example":"2026-06-01"},"tags":{"type":"string","description":"Comma-separated list of tag IDs to filter employees by shift requirements","example":"1,2,3"},"qualifications":{"type":"string","description":"Comma-separated list of qualification IDs to filter employees by shift requirements","example":"4,5,6"},"available_for_shift":{"type":"boolean","description":"Filter to only show employees available for the shift (no errors or warnings)","example":true},"order":{"type":"string","description":"Field to sort employees by","enum":["name","hours_worked","age"],"example":"name"},"order_direction":{"type":"string","description":"Sort direction (required if order is specified)","enum":["asc","desc"],"example":"asc"},"include_blocked":{"type":"boolean","description":"Flag to indicate if employees with blocking errors should be included in the results. When false (default), employees with errors will be filtered out.","example":false},"preselected_employee_ids":{"type":"array","description":"Array of employee IDs that should always be included in results regardless of blocking status. Useful when editing shifts to ensure the currently assigned employee remains visible.","items":{"type":"integer","example":123}},"apply_position_exclusions":{"type":"boolean","description":"Whether to apply client position exclusion filtering. When false (default for roster operations), employees excluded from positions will still be returned. When true, excluded employees will be filtered out.","example":false},"hours_worked_mode":{"type":"string","description":"Controls which value is returned in hours_worked. `current` returns existing rostered hours. `projected_create` returns existing + requested shift duration. `projected_edit` returns existing excluding ignore_shift_id + requested shift duration.","enum":["current","projected_create","projected_edit"],"example":"current"}}},"EmployeeLeaveLedgerTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-leave-ledger"},"attributes":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","description":"Object type - set to 'employee-leave-ledger'","example":"employee-leave-ledger"},"id":{"type":"string","description":"Record ID","example":"545"},"attributes":{"type":"object","properties":{"can_id":{"type":"integer","description":"Employee ID","example":38},"leave_rule_id":{"type":"integer","description":"Leave rule ID related to this setting","example":5555},"amount":{"type":"string","description":"Amount of leave balance","example":"105.3570"},"leave_loading":{"type":"string","description":"Leave loading in decimal format","example":"0.007"},"leave_loading_percentage":{"type":"number","description":"Leave loading in percentage format","example":0.7},"accrual_limit":{"type":"string","description":"Accrual limit per payslip","example":"3.6500"},"accrual_minimum":{"type":"string","description":"Accrual minimum per payslip","example":"0.000"},"use_default_accrual_value":{"type":"boolean","description":"Use default accrual value from leave rule\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"entitlement_type":{"type":"string","description":"Type of entitlement accrual","enum":["percentage","hours"]},"entitlement_base":{"type":"string","description":"Employee accrue leave amount on the basis of","enum":["ordinary_hour_worked","every_hour_worked"]},"entitlement_value":{"type":"string","description":"Employee accrue this amount per basis of hour worked","example":"0.0769"},"entitlement_aggregate":{"type":"string","description":"If set to 'yes', leave balance amount will be reset on anniversary","enum":["yes","no"]},"deleted":{"type":"boolean","description":"Is this leave balance record deleted?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"frozen":{"type":"boolean","description":"When employee is terminated, this property is set to true\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"allow_advanced_accrual":{"type":"string","description":"If set to 'yes', employee is allowed to have negative balance","enum":["yes","no"]},"payable_rate":{"type":"number","description":"Employee rate based on position","example":45.5488},"leave_rule":{"type":"object","properties":{"leave_rule_id":{"type":"integer","description":"Leave rule ID related to this setting","example":5555},"leave_title":{"type":"string","description":"Leave rule title","example":"Annual Leave"},"super":{"type":"boolean","description":"Is superannuation applied for this leave rule?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"vars_cashing":{"type":"string","description":"(treat as JSON string) variables applied when cashing out leave","example":"[\"work_cover\",\"super\"]"},"vars_termination":{"type":"string","description":"(treat as JSON string) variables applied when employee being terminated","example":"[\"work_cover\",\"payroll\"]"},"vars_leave_application":{"type":"string","description":"(treat as JSON string) variables applied when leave applied","example":"[\"work_cover\",\"payroll\",\"super\"]"},"accrue_on_takeout":{"type":"string","description":"Setting for accrual when leave is taken","enum":["acc_accrue","acc_accrue_all_others","acc_do_nothing"]},"can_employee_apply":{"type":"string","description":"How can employees see leave options and apply from?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>yes<\/td><td>only from timesheets<\/td><\/tr><tr><td>no<\/td><td>from employee portal only<\/td><\/tr><tr><td>both<\/td><td>from both timesheets and employee portal<\/td><\/tr><\/table>","enum":["yes","no","both"]},"pay_nopay":{"type":"string","description":"Is this paid leave?","enum":["pay","nopay"]},"invoice":{"type":"boolean","description":"Can be invoiced?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"apply_to_new_ppt":{"type":"boolean","description":"Apply this to new permanent \/ part-time employees?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"apply_to_new_casual":{"type":"boolean","description":"Apply this to new casual employees?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"default_accrual":{"type":"number","description":"Default accrual value per hour worked","example":0.0769},"default_accrual_per":{"type":"string","description":"How employee accrue leave?","enum":["ordinary_hour_worked","every_hour_worked"]},"display_payslip":{"type":"boolean","description":"Display balance on payslip?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"display_payslip_paying":{"type":"boolean","description":"Show leave redeemed on payslips\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"can_apply_paycycle_cashout":{"type":"boolean","description":"Is cash out option available via paycycles?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"can_apply_paycycle_termination":{"type":"boolean","description":"Is termination option available via paycycles?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"can_assign_to_casual_employee":{"type":"boolean","description":"Can leave type be assigned to casual employees?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]}}}}}}}}}},"relationships":{"type":"object","properties":{"position-entitlement-settings":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":85},"type":{"type":"integer","description":"Type of side loaded relationship","example":"position-entitlement-settings"}}}}}}}}},"PositionEntitlementSettingsTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"position-entitlement-settings"},"attributes":{"type":"object","properties":{"type":{"type":"string","description":"Object type - set to 'position-entitlement-settings'","example":"position-entitlement-settings"},"id":{"type":"integer","description":"Record ID","example":10},"attributes":{"type":"object","properties":{"position_selection_id":{"type":"integer","description":"Employee's position record ID","example":6565},"leave_rule_id":{"type":"integer","description":"Leave rule ID attached to this entitlement setting","example":5555},"cashout_on_position_end":{"type":"integer","description":"Cashing out entitlement setting when employee finishes position\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Cash out<\/td><\/tr><tr><td>2<\/td><td>Carry over<\/td><\/tr><tr><td>3<\/td><td>Delete<\/td><\/tr><\/table>","enum":[1,2,3]},"comment":{"type":"string","description":"Comment on entitlement setting","example":"position end"},"leave_rule":{"type":"object","properties":{"leave_rule_id":{"type":"integer","description":"Leave rule ID related to this setting","example":5555},"leave_title":{"type":"string","description":"Leave rule title","example":"Annual Leave"},"super":{"type":"boolean","description":"Is superannuation applied for this leave rule?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"vars_cashing":{"type":"string","description":"(treat as JSON string) variables applied when cashing out leave","example":"[\"work_cover\",\"super\"]"},"vars_termination":{"type":"string","description":"(treat as JSON string) variables applied when employee being terminated","example":"[\"work_cover\",\"payroll\"]"},"vars_leave_application":{"type":"string","description":"(treat as JSON string) variables applied when leave applied","example":"[\"work_cover\",\"payroll\",\"super\"]"},"accrue_on_takeout":{"type":"string","description":"Setting for accrual when leave is taken","enum":["acc_accrue","acc_accrue_all_others","acc_do_nothing"]},"can_employee_apply":{"type":"string","description":"How can employees see leave options and apply from?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>yes<\/td><td>only from timesheets<\/td><\/tr><tr><td>no<\/td><td>from employee portal only<\/td><\/tr><tr><td>both<\/td><td>from both employee portal and timesheets<\/td><\/tr><\/table>","enum":["yes","no","both"]},"pay_nopay":{"type":"string","description":"Is this paid leave?","enum":["pay","nopay"]},"invoice":{"type":"boolean","description":"Can be invoiced?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"apply_to_new_ppt":{"type":"boolean","description":"Apply this to new permanent \/ part-time employees?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"apply_to_new_casual":{"type":"boolean","description":"Apply this to new casual employees?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"default_accrual":{"type":"number","description":"Default accrual value per hour worked","example":0.0769},"default_accrual_per":{"type":"string","description":"How employee accrue leave?","enum":["ordinary_hour_worked","every_hour_worked"]},"display_payslip":{"type":"boolean","description":"Display balance on payslip?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"has_file_upload":{"type":"boolean","description":"File upload required (e.g Medical certificate) when applying leave\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"file_upload_required_days":{"type":"integer","description":"No. of leave days taken for file upload to be required\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>-1<\/td><td>optional<\/td><\/tr><tr><td>0<\/td><td>mandatory<\/td><\/tr><tr><td>1-6<\/td><td>number of days before it becomes mandatory<\/td><\/tr><\/table>","enum":[-1,0,1,2,3,4,5,6]},"file_upload_required_on_day":{"type":"string","description":"File upload is mandatory if leave falls on this day","example":"Monday"},"display_payslip_paying":{"type":"boolean","description":"Show leave redeemed on payslips\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"can_apply_paycycle_cashout":{"type":"boolean","description":"Is cash out option available via paycycles?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"can_apply_paycycle_termination":{"type":"boolean","description":"Is termination option available via paycycles?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"can_assign_to_casual_employee":{"type":"boolean","description":"Can leave type be assigned to casual employees?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"leave_liability_applicable":{"type":"boolean","description":"Can leave type be included in leave liability report?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"pay_api_eligible":{"type":"boolean","description":"Internal use only","enum":[1,0]}}}}}}}}},"HolidayTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"holidays"},"attributes":{"type":"object","properties":{"date":{"type":"string","description":"Date of the holiday","example":"2026-06-01"},"description":{"type":"string","description":"Description of the holiday","example":"Christmas Eve"},"candidates":{"type":"array","items":{"type":"integer","description":"Employee Id attached to this holiday","example":120}},"state":{"type":"string","description":"List of states where this holiday is in-effect, separated by '|'","example":"NT|WA"},"client_id":{"type":"numeric","description":"Operation Id related to this holiday","example":11},"job_id":{"type":"numeric","description":"Job Id related to this holiday","example":10101},"states":{"type":"array","items":{"type":"object","properties":{"state_id":{"type":"numeric","description":"State Id","example":3},"name":{"type":"string","description":"State name","example":"Northern Territory"},"abbreviation":{"type":"string","description":"State abbreviation","example":"NT"}}}},"locations":{"type":"array","items":{"type":"object","properties":{"loc_id":{"type":"numeric","description":"Location Id","example":11},"state_id":{"type":"numeric","description":"State Id where this location exists","example":4},"location":{"type":"string","description":"Location name","example":"Gold Coast"},"state":{"type":"string","description":"State abbreviation","example":"QLD"}}}},"start_time":{"type":"string","description":"Start time of the holiday (in 24-hour format)","example":"18:00"},"finish_time":{"type":"string","description":"End time of the holiday (in 24-hour format)","example":"00:00"},"start_time_formatted":{"type":"string","description":"Start time of the holiday (in 12-hour format)","example":"6:00 PM"},"finish_time_formatted":{"type":"string","description":"End time of the holiday (in 12-hour format)","example":"12:00 AM"}}},"relationships":{"type":"object","properties":{"holiday-additional-details":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":75},"type":{"type":"integer","description":"Type of side loaded relationship","example":"holiday-additional-details"}}}}}}}}}},"HolidayAdditionalDetailsTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"holiday-additional-details"},"attributes":{"type":"object","properties":{"holiday_id":{"type":"numeric","description":"Holiday Id related to this additional details","example":225},"employee_id":{"type":"numeric","description":"Employee Id related to this additional details","example":123},"client_id":{"type":"numeric","description":"Operation Id related to this additional details","example":522},"roster_branch_id":{"type":"numeric","description":"","example":705},"client":{"type":"object","description":"Describes the operation details related to this additional details. See \/api\/v1\/clients for list of fields"},"branch":{"type":"object","description":"Describes the roster branch details related to this additional details. See \/api\/v2\/roster-branches for list of fields"},"award_id":{"type":"numeric","description":"Award Id related to this additional details","example":1001}}}}},"ManagerTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"manager"},"attributes":{"type":"object","properties":{"name":{"type":"string","description":"Manager Name","example":"John Doe"},"email":{"type":"string","description":"Manager Email","example":"john@doe.com"}}}}},"CustomTemplateAdminTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"custom-template-admin"},"attributes":{"type":"object","properties":{"id":{"type":"number","description":"Current authority id","example":1},"admin_list":{"type":"array","description":"List of admin that registered custom template","example":1}}}}},"CustomTemplateTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"custom-template"},"attributes":{"type":"object","properties":{"id":{"type":"number","description":"Index value","example":1},"name":{"type":"string","description":"Custom Template \/ credential name","example":"Job Confirmation"},"template":{"type":"string","description":"Content of template","example":"WORK CONFIRMED: Next week Monday and Tuesday 7am start at Central West Waterproofing."},"type":{"type":"number","description":"Type of template, 1: SMS, 2: Email","example":1},"email_subject":{"type":"string","description":"Email subject","example":"Job Confirmation"},"admin_id":{"type":"number","description":"Index value","example":1},"reply_admin_id":{"type":"number","description":"Index value","example":1}}}}},"UploadDeleteAttachmentApiRequest":{"type":"object","properties":{"custom_templates_attachments":{"type":"file"}}},"DeleteAttachmentApiRequest":{"type":"object","properties":{"custom_templates_attachments":{"type":"file"}}},"AddCustomTemplateApiSearchRequest":{"type":"object","properties":{"custom_template":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of custom template","example":"Bachelor of Arts"},"type":{"type":"string","description":"Type of custom template, 1: email, 2: sms","example":"1"},"admin_id":{"type":"string","description":"Id of admin that registered custom template","example":"1"},"attachment":{"type":"string","description":"Files attached with email template existed or not","example":"1"},"template":{"type":"string","description":"Custom template content","example":"This is confirmation message that you will show up on Monday."}}}}}},"UpdateCustomTemplateApiSearchRequest":{"type":"object","properties":{"custom_template":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of custom template","example":"Bachelor of Arts"},"type":{"type":"string","description":"Type of custom template, 1: email, 2: sms","example":"1"},"admin_id":{"type":"string","description":"Id of admin that registered custom template","example":"1"},"attachment":{"type":"string","description":"Files attached with email template existed or not","example":"1"},"template":{"type":"string","description":"Custom template content","example":"This is confirmation message that you will show up on Monday."},"id":{"type":"number","description":"Id of Custom template (required if updating)","example":17}}}}}},"EmployeeShiftLogRequest":{"type":"object","properties":{"params":{"type":"object","properties":{"type":{"type":"string","description":"Type of request","enum":["create","update","delete","create_bulk_shift"]},"action_type":{"type":"string","description":"Type of shift","enum":["assign","offer","open"]},"is_shortlist":{"type":"boolean","description":"Flag to indicate that whether shift offers should be shortlisted","enum":[true,false]},"until_end_time_required":{"type":"boolean","description":"Flag to indicate that employee is required until end of shift","enum":[true,false]},"branch_id":{"type":"string","description":"Roster branch id","example":"29"},"shift_end":{"type":"string","description":"Date and time of shift end time","example":"2026-06-01 03:32:50"},"employee_id":{"type":"string","description":"Employee id","example":"32"},"employee_shift_id":{"type":"string","description":"Roster shift employee id, needed when updating a shift","example":"11585"},"shift_start":{"type":"string","description":"Date and time of shift start time","example":"2026-06-01 03:32:50"},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance id","example":"118"},"allowance_rate_id":{"type":"string","description":"Allowance rate id","example":"173"},"allowance_qty":{"type":"integer","description":"Number of unit of allowance requested for this shift (e.g.: X km of travel allowance)","example":5}}}},"shift_comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment to be added","example":"Employee should arrive 10 minutes early"},"visible_to_employee":{"type":"string","description":"Flag to make this comment visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>visible<\/td><\/tr><tr><td>0<\/td><td>hidden<\/td><\/tr><\/table>","enum":["1","0"]},"comment_id":{"type":"string","description":"If set, will update an existing comment with specified Id; use in conjunction with 'edited'","example":"100"},"edited":{"type":"boolean","description":"This property is required. If set to true, will update an existing comment; use in conjunction with 'comment_id'","enum":[true,false]},"to_delete":{"type":"boolean","description":"This property is required. To delete an existing comment, set this to true (in conjunction with 'comment_id'), otherwise, set to false","enum":[true,false]},"saved":{"type":"boolean","description":"This property is required. To create a new comment or update existing comment, set this to false","enum":[true,false]}}}},"tags":{"type":"array","items":{"type":"string","description":"Tag id","example":"31"}},"qualifications":{"type":"array","items":{"type":"string","description":"Qualification id","example":"1"}},"breaks":{"type":"array","items":{"type":"object","properties":{"start":{"type":"string","description":"Date and time of break start","example":"2026-06-01 03:32:50"},"break_length":{"type":"numeric","description":"The length of the break in hours and minutes","example":"0.5"},"break_is_payable":{"type":"boolean","description":"Flag to indicate if break is payable","enum":[0,1]}}}}}}}},"ReasonListTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"reason-list"},"attributes":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","description":"Type of values; i.e.: 'reason-list'","example":"reason-list"},"attributes":{"type":"object","properties":{"reason_id":{"type":"integer","description":"Reason id","example":2},"title":{"type":"string","description":"Reason label","example":"Approved Leave"}}}}}}}}}},"LeaveRuleTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"leave-rule"},"attributes":{"type":"object","properties":{"leave_title":{"type":"string","description":"Leave Title","example":"Annual Leave"},"withhold_tax":{"type":"boolean","description":"Does this leave type withhold tax?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>yes<\/td><\/tr><tr><td>0<\/td><td>no<\/td><\/tr><\/table>","enum":[1,0]},"super":{"type":"boolean","description":"Is superannuation applied for this leave type?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>yes<\/td><\/tr><tr><td>0<\/td><td>no<\/td><\/tr><\/table>","enum":[1,0]},"accrue_on_takeout":{"type":"string","description":"What happens when this leave type is taken out? (do nothing, accrue only this leave type, or accrue every leave types)","enum":["acc_do_nothing","acc_accrue","acc_accrue_all_others"]},"set_from_timesheet":{"type":"string","description":"How can employees see leave options and apply from?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>yes<\/td><td>only from timesheets<\/td><\/tr><tr><td>no<\/td><td>from employee portal only<\/td><\/tr><tr><td>both<\/td><td>from both timesheets and employee portal<\/td><\/tr><\/table>","enum":["yes","no","both"]},"pay_or_nopay":{"type":"string","description":"Is this paid leave?","enum":["pay","nopay"]},"invoice":{"type":"boolean","description":"Can be invoiced?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"default_accrual":{"type":"number","description":"Default accrual value per hour worked","example":0.0769},"default_accrual_per":{"type":"string","description":"How employee accrue leave?","enum":["ordinary_hour_worked","every_hour_worked"]},"apply_to_new_ppt_employee":{"type":"boolean","description":"Apply this to new permanent \/ part-time employees?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"apply_to_new_casual_employee":{"type":"boolean","description":"Apply this to new casual employees?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"can_assign_to_casual_employee":{"type":"boolean","description":"Can this leave rule be assigned to casual employees?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"display_payslip":{"type":"boolean","description":"Display balance on payslip?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"vars_cashing":{"type":"string","description":"(treat as JSON string) variables applied when cashing out leave","example":"[\"work_cover\",\"super\"]"},"vars_termination":{"type":"string","description":"(treat as JSON string) variables applied when employee being terminated","example":"[\"work_cover\",\"payroll\"]"},"vars_leave_application":{"type":"string","description":"(treat as JSON string) variables applied when leave applied","example":"[\"work_cover\",\"payroll\",\"super\"]"},"reportable_leave_type":{"type":"string","description":"Reportable paid leave type code (STP Phase 2)","enum":["O","P","W","A","C","U"]},"file_upload_settings":{"type":"object","properties":{"allow_file_upload":{"type":"boolean","description":"Does this leave rule allow file upload?","enum":[true,false]},"file_upload_required_days":{"type":"string","description":"File upload required if leave more than x days\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>-1<\/td><td>off<\/td><\/tr><tr><td>0<\/td><td>mandatory<\/td><\/tr><tr><td>1-6<\/td><td>number of days before it becomes mandatory<\/td><\/tr><\/table>","enum":[-1,0,1,2,3,4,5,6]},"file_upload_required_on_weekdays":{"type":"string","description":"Mandatory file upload on days","enum":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]}}}}}}},"UpdateQualificationApiSearchRequest":{"type":"object","properties":{"qualifications":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of the Qualification","example":"Bachelor of Arts"},"type":{"type":"string","description":"Type of Qualification","enum":["licence","induction","qualification"]},"capture_licence_number":{"type":"boolean","description":"Should licence number be captured?","enum":[true,false]},"expiry_type":{"type":"string","description":"Expiration Type (Assessment date or Expiration date)","enum":["assess","expiry"]},"expiry_warning_comms_settings":{"type":"array","description":"Settings for expiry warning communications using dynamic comms template settings","items":{"type":"object","properties":{"employee":{"type":"boolean","description":"Notify employee","example":false},"employeeManager":{"type":"boolean","description":"Notify employee manager","example":false},"specificUsers":{"type":"array","items":{"type":"integer","example":"123"},"description":"Specific admin-users to notify"}}}},"edited_record_comms_settings":{"type":"array","description":"Settings for edited record communications using dynamic comms template settings","items":{"type":"object","properties":{"employeeManager":{"type":"boolean","description":"Notify employee manager","example":false},"specificUsers":{"type":"array","items":{"type":"integer","example":"123"},"description":"Specific admin-users to notify"}}}},"show_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be displayed if employee has these tags; do not send this with 'hide_if_user_has_tag'","example":"29,102"},"hide_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be hidden if employee has these tags; do not send this with 'show_if_user_has_tag'","example":"100"},"assessment_days":{"type":"number","description":"For qualifications with \"expiry type: assess\", this is the number of days since last assessment before an employee is required to be reassessed","example":365},"external_id":{"type":"string","description":"External Id linked to this qualification","example":"Department_20_Qualification"},"id":{"type":"number","description":"Id of Qualification (required if updating)","example":17}}}}}},"AddQualificationApiRequest":{"type":"object","properties":{"qualifications":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Name of the Qualification","example":"Bachelor of Arts"},"type":{"type":"string","description":"Type of Qualification","enum":["licence","induction","qualification"]},"capture_licence_number":{"type":"boolean","description":"Should licence number be captured?","enum":[true,false]},"expiry_type":{"type":"string","description":"Expiration Type (Assessment date or Expiration date)","enum":["assess","expiry"]},"expiry_warning_comms_settings":{"type":"array","description":"Settings for expiry warning communications using dynamic comms template settings","items":{"type":"object","properties":{"employee":{"type":"boolean","description":"Notify employee","example":false},"employeeManager":{"type":"boolean","description":"Notify employee manager","example":false},"specificUsers":{"type":"array","items":{"type":"integer","example":"123"},"description":"Specific admin-users to notify"}}}},"edited_record_comms_settings":{"type":"array","description":"Settings for edited record communications using dynamic comms template settings","items":{"type":"object","properties":{"employeeManager":{"type":"boolean","description":"Notify employee manager","example":false},"specificUsers":{"type":"array","items":{"type":"integer","example":"123"},"description":"Specific admin-users to notify"}}}},"show_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be displayed if employee has these tags; do not send this with 'hide_if_user_has_tag'","example":"29,102"},"hide_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be hidden if employee has these tags; do not send this with 'show_if_user_has_tag'","example":"100"},"assessment_days":{"type":"number","description":"For qualifications with \"expiry type: assess\", this is the number of days since last assessment before an employee is required to be reassessed","example":365},"external_id":{"type":"string","description":"External Id linked to this qualification","example":"Department_20_Qualification"}}}}}},"TagGroupAddApiRequest":{"type":"object","properties":{"tag_label":{"type":"string","description":"Name \/ label of the new tag group","example":"New Tag Group"},"hide_tag_in_create_job_and_roster":{"type":"string","description":"Should tag group be hidden when creating job \/ roster?","enum":[true,false]}}},"TagGroupEditApiRequest":{"type":"object","properties":{"id":{"type":"number","description":"Id of the tag group to be edited","example":8},"tag_label":{"type":"string","description":"New name \/ label of the tag group","example":"Brisbane Tag Group"},"hide_tag_in_create_job_and_roster":{"type":"string","description":"Should tag group be hidden when creating job \/ roster?","enum":[true,false]}}},"TagGroupDeleteApiRequest":{"type":"object","properties":{"id":{"type":"number","description":"Id of tag group to be deleted","example":8}}},"TagTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"tag"},"attributes":{"type":"object","properties":{"name":{"type":"string","description":"Name of the tag","example":"Hard Worker"},"tag_group_id":{"type":"integer","description":"Tag group ID","example":4321},"created_at":{"type":"string","description":"Date of when the tag was created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date of when the tag was last updated","example":"2026-06-01 03:32:51"}}},"relationships":{"type":"object","properties":{"tag-group":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":93},"type":{"type":"integer","description":"Type of side loaded relationship","example":"tag-group"}}}}}}}}},"TagAddApiRequest":{"type":"object","properties":{"tag_label":{"type":"string","description":"Name \/ label of the new tag","example":"New Tag"},"tag_group_id":{"type":"number","description":"ID of the tag group to attach to","example":"10"}}},"TagEditApiRequest":{"type":"object","properties":{"id":{"type":"number","description":"Id of the tag to be edited","example":8},"tag_label":{"type":"string","description":"New name \/ label of the tag","example":"Brisbane Tag"}}},"TagDeleteApiRequest":{"type":"object","properties":{"id":{"type":"number","description":"Id of tag to be deleted","example":8}}},"QualificationTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"qualification"},"attributes":{"type":"object","properties":{"name":{"type":"string","description":"Qualification \/ credential name","example":"Bachelor Degree"},"type":{"type":"string","description":"Type of qualification \/ credential","enum":["qualification","induction","licence"]},"external_id":{"type":"string","description":"User defined, alphanumeric identifier","example":"Bachelor Degree"},"capture_licence_number":{"type":"boolean","description":"Should licence number be captured?","example":true},"assessment_days":{"type":"number","description":"For qualifications with \"expiry type: assess\", this is the number of days since last assessment before an employee is required to be reassessed","example":365},"expiry_type":{"type":"string","description":"Expiration Type (Assessment date or Expiration date)","example":"expiry"},"show_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be displayed if employee has these tags; do not send this with 'hide_if_user_has_tag'","example":"29,102"},"hide_if_user_has_tag":{"type":"string","description":"Comma-separated tag Ids; Qualification should be hidden if employee has these tags; do not send this with 'show_if_user_has_tag'","example":"100"},"notify_employee_on_expiry":{"type":"boolean","description":"Notify employee on expiry","example":false},"notify_reps_on_expiry":{"type":"boolean","description":"Notify Representative on expiry","example":false},"notify_specific_admin_on_expiry":{"type":"array","description":"Notify admins on expiry","example":["123"]},"notify_reps_on_edit":{"type":"boolean","description":"Notify Representative on edit","example":false},"notify_specific_admin_on_edit":{"type":"array","description":"Notify admins on edit","example":["123"]},"unspecified_file":{"type":"boolean","description":"Is unspecified compliance checked?","enum":[true,false]},"tag_labels":{"type":"array","description":"List of tag labels","example":["Manager","Employee"]},"edit_show_hide_list_of_tag":{"type":"array","description":"List of tag id and labels","example":[["1","Manager"],["2","Employee"]]},"number_of_qualification_used":{"type":"number","description":"Number of employees that have this qualification","example":"51"},"mandatory_compliance":{"type":"string","description":"Compliance is applied to all or specific employees","example":"all"},"edit_mandatory_list_of_tag":{"type":"array","description":"List of tag id and labels","example":[["1","Manager"],["2","Employee"]]},"mandatory_tag_labels":{"type":"array","description":"List of tag labels","example":["Manager","Employee"]}}}}},"AddCommentRequest":{"type":"object","properties":{"comment":{"type":"object","properties":{"attributes":{"type":"object","properties":{"user_id":{"type":"string","description":"Employee id","example":"10"},"staff_id":{"type":"string","description":"Id of administrator who create this comment","example":"1"},"description_id":{"type":"string","description":"Id of comment category, for example 37 for General Comments (refer to \/api\/v1\/comments\/candidate\/description for full list)","example":"37"},"comment":{"type":"string","description":"Content of comment to be saved","example":"Test comment"},"is_candidate":{"type":"boolean","description":"Is this an employee comment?","enum":[true,false]},"is_client":{"type":"boolean","description":"Is this an operation comment?","enum":[true,false]},"created_by_id":{"type":"string","description":"Id of administrator who created this comment","example":"1"},"visible":{"type":"boolean","description":"Should this comment be visible to employee?","enum":[true,false]}}}}}}},"CommentTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"comment"},"attributes":{"type":"object","properties":{"user_id":{"type":"string","description":"Employee id","example":"10"},"description_id":{"type":"string","description":"Id of comment category, for example 37 for General Comments (refer to \/api\/v1\/comments\/candidate\/description for full list)","example":"37"},"description":{"type":"string","description":"Label od comment category, for example General Comments (refer to \/api\/v1\/comments\/candidate\/description for full list)","example":"General Comments"},"comment":{"type":"string","description":"Content of comment","example":"Test comment"},"is_candidate":{"type":"boolean","description":"Is this an employee comment?","enum":[true,false]},"is_client":{"type":"boolean","description":"Is this an operation comment?","enum":[true,false]},"action_date":{"type":"string","description":"","example":""},"created_by_id":{"type":"string","description":"Id of administrator who created this comment","example":"1"},"timestamp":{"type":"string","description":"Comment creation timestamp","example":"2026-06-01 03:32:51"},"contact_id":{"type":"string","description":"","example":""},"visible":{"type":"boolean","description":"Should this comment be visible to employee?","enum":[true,false]},"mentions_id":{"type":"string","description":"","example":""},"staff_username":{"type":"string","description":"Administrator username","example":"john_doe"},"staff_id":{"type":"string","description":"Administrator user Id","example":"1"},"staff_name":{"type":"string","description":"Administrator name","example":"John Doe"},"name":{"type":"string","description":"Employee name","example":"Richard Branson"},"is_pinned":{"type":"boolean","description":"Is this comment pinned?","enum":[true,false]}}}}},"EmailTemplateTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"email-template"},"attributes":{"type":"object","properties":{"id":{"type":"number","description":"Index value","example":1},"name":{"type":"string","description":"Custom Template \/ credential name","example":"Job Confirmation"},"template":{"type":"string","description":"Content of template","example":"WORK CONFIRMED: Next week Monday and Tuesday 7am start at Central West Waterproofing."},"type":{"type":"number","description":"Type of template, 1: SMS, 2: Email","example":1},"email_subject":{"type":"string","description":"Email subject","example":"Job Confirmation"},"authority_id":{"type":"integer","description":"Admin Id","example":1},"admin_id":{"type":"number","description":"Index value","example":1},"reply_admin_id":{"type":"number","description":"Index value","example":1},"storage_admin_id":{"type":"integer","description":"Admin Id","example":1},"admin_name":{"type":"string","description":"Admin name","example":"Michael Corleone"},"attachment":{"type":"boolean","description":"Does this template have attachment?","enum":[true,false]}}}}},"SMSTemplateTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"sms-template"},"attributes":{"type":"object","properties":{"id":{"type":"number","description":"Index value","example":1},"name":{"type":"string","description":"Custom Template \/ credential name","example":"Job Confirmation"},"template":{"type":"string","description":"Content of template","example":"WORK CONFIRMED: Next week Monday and Tuesday 7am start at Central West Waterproofing."},"type":{"type":"number","description":"Type of template, 1: SMS, 2: Email","example":1},"admin_id":{"type":"number","description":"Index value","example":1},"authority_id":{"type":"integer","description":"Admin Id","example":1},"admin_name":{"type":"string","description":"Admin name","example":"Michael Corleone"}}}}},"EmployeePositionTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-positions"},"attributes":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","description":"Object type - this is set to 'employee-positions'","example":"employee-positions"},"id":{"type":"string","description":"Position record ID","example":"124343"},"attributes":{"type":"object","properties":{"can_id":{"type":"integer","description":"Employee ID","example":851},"subclass_id":{"type":"integer","description":"Position ID","example":134},"po":{"type":"string","description":"Purchase Order or Cost Code","example":"PO#1341"},"po_type":{"type":"string","description":"PO type label (can be null)","enum":["Fall back","Override","Post fix"]},"po_type_id":{"type":"string","description":"PO type ID\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>fall back<\/td><\/tr><tr><td>2<\/td><td>override<\/td><\/tr><tr><td>3<\/td><td>post fix<\/td><\/tr><\/table>","enum":["1","2","3"]},"rate":{"type":"number","description":"Employee rate","example":28.92},"is_permanent_part_time_position":{"type":"integer","description":"Is this a permanent or part-time position?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>full time<\/td><\/tr><tr><td>2<\/td><td>part-time<\/td><\/tr><tr><td>3<\/td><td>secondary position<\/td><\/tr><tr><td>null (not set)<\/td><td>casual<\/td><\/tr><\/table>","enum":[1,2,3,null]},"casual_entitlement_position_location_id":{"type":"integer","description":"Position location ID for casual entitlement (if set)","example":605},"effective_start":{"type":"string","description":"Position effective start date","example":"2026-06-01"},"effective_end":{"type":"string","description":"Position effective end date","example":"2026-07-01"},"custom_position_title":{"type":"string","description":"Position's custom title","example":"Mark's interim director position"},"use_operation_rates_book":{"type":"boolean","description":"Does this position use operation rates book?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]}}}}}}}},"relationships":{"type":"object","properties":{"positions":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":30},"type":{"type":"integer","description":"Type of side loaded relationship","example":"positions"}}}}}},"position-location":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":51},"type":{"type":"integer","description":"Type of side loaded relationship","example":"position-location"}}}}}},"employee-permanent-part-time-positions":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":5},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-permanent-part-time-positions"}}}}},"position-entitlement-settings":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":90},"type":{"type":"integer","description":"Type of side loaded relationship","example":"position-entitlement-settings"}}}}}}}}}},"PositionTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"positions"},"attributes":{"type":"object","properties":{"type":{"type":"string","description":"Object type - set to 'positions'","example":"positions"},"id":{"type":"integer","description":"Position record ID","example":10},"attributes":{"type":"object","properties":{"position_label":{"type":"string","description":"Label of position","example":"Storeworker Grade 1"}}}}},"relationships":{"type":"object","properties":{"classification":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":61},"type":{"type":"integer","description":"Type of side loaded relationship","example":"classification"}}}}}}}}},"ClassificationTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"classification"},"attributes":{"type":"object","properties":{"id":{"type":"integer","description":"Classification ID","example":10},"allowance_group_id":{"type":"integer","description":"Award ID","example":100},"label":{"type":"string","description":"Classification label","example":"C10 - Engineering\/Manufacturing Tradesperson"},"short_label":{"type":"string","description":"Short label for classification","example":"C10"},"rate_unloaded":{"type":"number","description":"Rate without any loading","example":"21.720"},"rate":{"type":"number","description":"Rate","example":"27.15"},"deleted":{"type":"boolean","description":"Is this classification deleted?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}},"relationships":{"type":"object","properties":{"award_allowance_group":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":84},"type":{"type":"integer","description":"Type of side loaded relationship","example":"award_allowance_group"}}}}}}}}},"AwardAllowanceGroupTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"award_allowance_group"},"attributes":{"type":"object","properties":{"id":{"type":"integer","description":"ID of award","example":1},"title":{"type":"string","description":"Title of the award","example":"Cleaning Services Award 2005"},"short_title":{"type":"string","description":"Short title for the award","example":"Cleaning Award - 2005"},"loading_rule":{"type":"string","description":"Penalty rate loading rule\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>base<\/td><td>base rate, ex. casual loading, multiplied by rate label + casual loading<\/td><\/tr><tr><td>casually_loaded<\/td><td>base rate, inc. casual loading, multiplied by rate label<\/td><\/tr><tr><td>normal_loaded<\/td><td>base rate, ex. casual loading, multiplied by rate label; Normal only with loading<\/td><\/tr><tr><td>normal_ex_loaded<\/td><td>base rate, ex. casual loading, multiplied by rate label; Normal, no loading, overtime + loading<\/td><\/tr><\/table>","enum":["base","casually_loaded","normal_loaded","normal_ex_loaded"]},"leave_loading":{"type":"number","description":"Leave loading applied to this award","example":0.175},"casual_loading":{"type":"number","description":"Casual loading applied to this award","example":0.25},"no_pay_award":{"type":"boolean","description":"Is this a no-pay award?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"break_rule":{"type":"string","description":"At what point in the shift should an unpaid break be applied?","enum":["start","middle","end"]},"max_day_override":{"type":"boolean","description":"Allow an override of maximum hours when approving timesheets?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"paycycle_average":{"type":"boolean","description":"Should maximum ordinary hours worked be averaged over a fortnight?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}}},"PositionLocationTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"position-location"},"attributes":{"type":"object","properties":{"type":{"type":"string","description":"Object type - set to 'position-location'","example":"position-location"},"id":{"type":"integer","description":"ID of position location record","example":5},"attributes":{"type":"object","properties":{"employee_id":{"type":"integer","description":"Employee ID","example":150},"subclass_id":{"type":"integer","description":"Position ID","example":425},"location_id":{"type":"integer","description":"Location ID","example":5},"base_rate":{"type":"number","description":"Base rate for the position and the employee","example":"26.15"},"permanent_part_time_main_location":{"type":"integer","description":"Main location for permanent \/ part-time position (if set)","example":5}}}}},"relationships":{"type":"object","properties":{"location":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":52},"type":{"type":"integer","description":"Type of side loaded relationship","example":"location"}}}}}}}}},"EmployeePermptTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-permanent-part-time-positions"},"attributes":{"type":"object","properties":{"type":{"type":"string","description":"Object type - set to 'employee-permanent-part-time-positions'","example":"employee-permanent-part-time-positions"},"id":{"type":"integer","description":"Record ID","example":332},"attributes":{"type":"object","properties":{"can_id":{"type":"integer","description":"Employee ID","example":38},"start_date":{"type":"string","description":"Position start date","example":"2026-06-01"},"end_date":{"type":"string","description":"Position end date","example":"2026-07-01"},"max_ordinary_hours_per_week":{"type":"number","description":"Maximum ordinary hours per week for this employee","example":38},"subclass_id":{"type":"integer","description":"Position ID","example":76},"rate":{"type":"number","description":"Rate for this employee and position","example":42.586},"annual_salary":{"type":"number","description":"Annual salary for this employee","example":84150},"employment_type":{"type":"string","description":"Employment type for this employee (full time or part time)","enum":["full","part"]},"use_operation_rates_book":{"deprecated":true,"type":"boolean","description":"Does this position use operation rates book?","enum":[true,false]},"display_salary_type":{"type":"string","description":"For internal use","enum":["hourly","annually"]},"position_selection_id":{"type":"integer","description":"For internal use","example":359},"client_id":{"type":"integer","description":"Operation ID related to this employee","example":10}}}}}}},"AddOperationRequest":{"type":"object","properties":{"company_name":{"type":"string","description":"Operation company name","example":"Test Operation Pty Ltd"},"trade_name":{"type":"string","description":"Operation trade name","example":"Futuristic Pty Ltd"},"abn":{"type":"string","description":"Operation ABN (11 digits)","example":"50110219460"},"postal_address":{"type":"string","description":"Operation postal address","example":"2 Mayneview Street, Milton, QLD 4064"},"office_address":{"type":"string","description":"Operation office address","example":"2 Mayneview Street, Milton, QLD 4064"},"phone":{"type":"string","description":"Operation landline number","example":"0733224455"},"mobile":{"type":"string","description":"Operation mobile number","example":"0412345678"},"admin_email":{"type":"string","description":"Operation admin email address","example":"test@operation.com.au"},"account_email":{"type":"string","description":"Operation account email address","example":"account@operation.com.au"},"payment_method":{"type":"string","description":"Operation payment method","enum":["EFT","Cheque","Credit Card","Paypal"]}}},"OperationPayRatesTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"operation-pay-rate"},"attributes":{"type":"object","properties":{"type":{"type":"string","description":"Data type","example":"pay-rate"},"id":{"type":"string","description":"Pay rate id","example":"1224"},"attributes":{"type":"object","properties":{"operation_id":{"type":"number","description":"Operation id","example":3},"position_id":{"type":"number","description":"Employee position id","example":400},"position_label":{"type":"string","description":"Employee position label","example":"Head Controller"},"payroll_tax_id":{"type":"number","description":"Payroll tax id of the pay rate","example":32},"payroll_tax_label":{"type":"string","description":"Payroll tax label (if available)","example":"Tax Label A"},"rate_label":{"type":"string","description":"Label for payment rate (prefixed with 's' for Ordinary hours)","example":"s-1, 1.5"},"perm_rate":{"type":"string","description":"Permanent\/part-time pay rate","example":"26.24"},"casual_rate":{"type":"string","description":"Casual pay rate","example":"32.80"},"wic_code":{"type":"string","description":"Workcover code applied for this pay rate","example":"WC-POS1"},"wic_label":{"type":"string","description":"Workcover label applied for this pay rate","example":"Position 1 workcover"},"wic_rate":{"type":"string","description":"Workcover rate (in %)","example":"2.500"}}}}}}},"PaycycleCandidateTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"paycycle"},"attributes":{"type":"object","properties":{"candidate_id":{"type":"string","description":"Employee id","example":"20"},"version":{"type":"string","description":"Paycycle version number","example":"5"},"is_adjustment":{"type":"string","description":"If non-zero, this is the id of paycycle that current paycycle is adjusting","example":"1321"},"payslip_id":{"type":"string","description":"Payslip id that was generated for this paycycle","example":"3409"},"name":{"type":"string","description":"Employee name","example":"Paul Smith"},"gross":{"type":"string","description":"Taxable total for this paycycle","example":"478.50"},"gross_v2":{"type":"string","description":"Gross amount for this paycycle","example":"498.50"},"tax":{"type":"string","description":"Tax amount for this paycycle","example":"29.00"},"deductions":{"type":"string","description":"Amount of deductions for this paycycle","example":"0"},"net":{"type":"string","description":"Net amount for this paycycle","example":"449.50"},"super":{"type":"string","description":"Employer superannuation contribution amount for this paycycle","example":"32.47"},"super_rate":{"type":"string","description":"Superannuation rate used to calculate the amount","example":"9.5000"},"super_threshold":{"type":"string","description":"Payment threshold before superannuation can be accrued","example":"450.0000"},"is_under_18":{"type":"boolean","description":"Flag to indicate if employee is under 18","enum":[true,false]},"changing_employment_type":{"type":"boolean","description":"Flag to indicate if employee has an upcoming position change","enum":[true,false]},"total_hours":{"type":"string","description":"Total number of hours worked for this paycycle","example":"13"},"total_ordinary_hours":{"type":"string","description":"Total number of ordinary hours worked for this paycycle","example":"10"},"total_overtime_hours":{"type":"string","description":"Total number of overtime hours worked for this paycycle","example":"3"},"total_entitlement_hours":{"type":"string","description":"Total number of entitlements applied for this paycycle","example":"0"},"paycycle_start_date":{"type":"string","description":"Start date of current paycycle period","example":"2026-06-01"},"week_end_date":{"type":"string","description":"End date for current paycycle","example":"2026-06-01"},"process_date":{"type":"string","description":"Date and time when this paycycle was processed","example":"2026-06-01 03:32:50"},"timesheet_ids":{"type":"string","description":"Comma-separated timesheet ids that forms this paycycle","example":"17,41"},"has_leave_redemption":{"type":"boolean","description":"Payslip contains a leave redemption"},"has_leave_loading":{"type":"boolean","description":"Payslip contains a leave redemption with leave loading"},"has_penalty_leave_loading":{"type":"boolean","description":"Payslip contains a leave redemption with penalty leave loading"},"error_message":{"type":"string","description":"Error message encountered during paycycle processing","example":"TFN not provided within 28 days limit, highest marginal tax rate will be applied"},"other_error":{"type":"string","description":"Other error messages encountered during paycycle processing","example":"Paycycle office code is invalid."},"status":{"type":"string","description":"Current status of the paycycle\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>0<\/td><td>Pending<\/td><\/tr><tr><td>1<\/td><td>In progress<\/td><\/tr><tr><td>2<\/td><td>Processed<\/td><\/tr><tr><td>4<\/td><td>Invoiced<\/td><\/tr><tr><td>-1<\/td><td>Required to be reprocessed<\/td><\/tr><\/table>","enum":["0","1","2","4","-1"]},"super_contribution":{"type":"string","description":"Superannuation contribution by employee","example":"200.00"},"office_code_id":{"type":"string","description":"Office code id where employee falls under","example":"1"},"office_code_label":{"type":"string","description":"Office code label where employee falls under","example":"Brisbane Office"},"status_label":{"type":"string","description":"Status label of the current paycycle; corresponds to'status'","example":"Pending"},"is_employee_archived":{"type":"boolean","description":"Flag to indicate that employee has been archived","enum":[true,false]},"has_rdo":{"type":"boolean","description":"Flag to indicate that employee has rdo ledger","enum":[true,false]},"has_toil":{"type":"boolean","description":"Flag to indicate that employee has toil ledger","enum":[true,false]},"has_work_cover":{"type":"string","description":"Flag to indicate if employee has workcover\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"has_special_condition":{"type":"string","description":"Flag to indicate if employee has special condition\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"has_terminated":{"type":"boolean","description":"Flag to indicate if employee has been terminated","enum":[true,false]},"timesheet_has_comment":{"type":"boolean","description":"Flag to indicate if timesheet has comments","enum":[true,false]},"timesheet_has_no_pay":{"type":"boolean","description":"Flag to indicate if timesheet ","enum":[true,false]},"super_contributions":{"type":"string","description":"Total amount of superannuation contributions (employee + employers)","example":"80.20"},"job_keeper_eligible":{"type":"string","description":"Flag to indicate if employee is eligible for JobKeeper payment\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"payslip_comment":{"type":"string","description":"General comments on individual payslips"},"adjustment_comment":{"type":"string","description":"Audit comments on individual payslips (only shown for adjustments)"},"overpayment_deduction_id":{"type":"number","description":"ID of the system overpayment deduction","example":1},"modified_at":{"type":"string","description":"Date and time when this payslip was last edited","example":"2026-06-01 03:32:50"},"modified_by":{"type":"string","description":"Name of user that modified this payslip"}}},"relationships":{"type":"object","properties":{"pay_item":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":28},"type":{"type":"integer","description":"Type of side loaded relationship","example":"pay_item"}}}}}},"employee-status":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":48},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-status"}}}}},"deduction":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":20},"type":{"type":"integer","description":"Type of side loaded relationship","example":"deduction"}}}}}}}}}},"PaycyclePayItemTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"pay_item"},"attributes":{"type":"object","properties":{"operation_id":{"type":"string","description":"Operation id","example":"2"},"paycycle_id":{"type":"string","description":"Paycycle id","example":"12043"},"version":{"type":"string","description":"Version number for this pay item","example":"2"},"state_id":{"type":"string","description":"State id (location) for this paycycle item; for possible values, refer to '\/api\/v1\/state' route","example":"4"},"payroll_tax_id":{"type":"string","description":"Payroll tax id applied for this pay item;","example":"2"},"position_id":{"type":"string","description":"Position id related to this pay item; for possible values, look at '\/api\/v1\/positions' route","example":"1"},"invoice_id":{"type":"string","description":"Invoice id related to this pay item","example":"523"},"timesheet_id":{"type":"string","description":"Timesheet id related to this pay item","example":"345"},"purchase_order":{"type":"string","description":"Purchase Order label \/ Cost Code for this pay item","example":"On Call"},"type":{"type":"string","description":"Type of pay item","enum":["line_item","allowance","shift_allowance","meal_allowance","entitlement_redeemed","entitlement_cash_out","entitlement_termination","rdo_redeemed","rdo_cash_out","rdo_cash_out_all","rdo_termination","toil_redeemed","toil_cash_out","toil_cash_out_all","toil_termination","reimbursement"]},"parent_type_id":{"type":"string","description":"Id of main record of this pay item (related to 'type' property)","example":"50587"},"associated_date":{"type":"string","description":"Date when pay item event occurred","example":"2026-06-01"},"label":{"type":"string","description":"Label for this pay item","example":"Normal (OTE)"},"no_pay":{"type":"integer","description":"Flag to indicate if this pay item is an unpaid item\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"no_charge":{"type":"integer","description":"Flag to indicate if this pay item is not charged in invoice\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"pay_rate":{"type":"number","description":"Pay rate to employee for this pay item","example":"37.60"},"charge_rate":{"type":"number","description":"Charge rate to client for this pay item","example":"40.50"},"quantity":{"type":"number","description":"Number of pays payable for this pay item","example":"2"},"charge_quantity":{"type":"number","description":"Number of charges charged to client for this pay item","example":"2"},"pay_amount":{"type":"number","description":"Total pay amount for this pay item (quantity x pay_rate)","example":"75.2"},"charge_amount":{"type":"number","description":"Total charge amount for this pay item (charge_quantity x charge_rate)","example":"81.0"},"stp_type":{"type":"string","description":"Pay item type for the purpose of ATO's Single Touch Payroll","enum":["Car","Transport","Laundry","Meals","Travel"]},"is_taxable":{"type":"boolean","description":"Flag to indicate if this item is taxable","enum":[true,false]},"is_super_applicable":{"type":"boolean","description":"Flag to indicate if superannuation is applicable to this item","enum":[true,false]},"is_payroll_tax_applicable":{"type":"boolean","description":"Flag to indicate if payroll tax is applicable to this item","enum":[true,false]},"is_work_cover_applicable":{"type":"boolean","description":"Flag to indicate if work cover is applicable to this item","enum":[true,false]},"is_public_liability_applicable":{"type":"boolean","description":"Flag to indicate if public liability is applicable to this item","enum":[true,false]},"manual":{"type":"boolean","description":"Flag to indicate if the pay item added manually through user interface should remain as edited when going through internal reprocessing","enum":[true,false]},"created_at":{"type":"string","description":"Date and time when this pay item was created","example":"2026-06-01 03:32:50"}}}}},"EmployeeStatusTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-status"},"attributes":{"type":"object","properties":{"has_workcover":{"type":"boolean","description":"Employee on work cover payment","example":true},"employment_restriction":{"type":"boolean","description":"Has employment restriction","example":false},"has_special_condition":{"type":"boolean","description":"Has special condition (null if not specified)","example":true},"maximum_hours_per_week":{"type":"number","description":"Employee's maximum hours per week","example":38},"employment_suspended":{"type":"boolean","description":"Has employment been suspended?","enum":[true,false]},"is_contractor":{"type":"boolean","description":"Is this employee a contractor?","enum":[true,false]}}}}},"PaycycleDeductionTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"deduction"},"attributes":{"type":"object","properties":{"reference":{"type":"string","description":"Reference of the deduction","example":"Flight Expenses"},"label":{"type":"string","description":"Deduction type label","example":"Child Support"},"amount":{"type":"number","description":"Deduction amount","example":47.67}}}}},"EtpDocumentTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"etp-document"},"attributes":{"type":"object","properties":{"candidate_id":{"type":"integer","description":"Employee Id","example":24},"name":{"type":"string","description":"Employee name","example":"Jacques Villeneuve"},"has_profile_picture":{"type":"boolean","description":"Does employee have profile picture?","enum":[true,false]},"total_payment":{"type":"number","description":"Total amount of payment","example":7500.45},"payment_date":{"type":"string","description":"ETP payment date (in YYYY-MM-DD format)","example":"2026-06-01"},"financial_year":{"type":"string","description":"Financial Year when ETP payment happens","example":"2026"},"etp":{"type":"string","description":"ETP code (can be more than 1 value, comma-separated)","example":"Code O"}}},"relationships":{"type":"object","properties":{"etp-payment":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":27},"type":{"type":"integer","description":"Type of side loaded relationship","example":"etp-payment"}}}}}}}}}},"EtpPaymentTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"etp-payment"},"attributes":{"type":"object","properties":{"version":{"type":"integer","description":"Version Id of the ETP payment","example":1},"etp_document_id":{"type":"integer","description":"ETP document Id related to this payment","example":2},"label":{"type":"string","description":"ETP payment label","example":"Payment in Lieu of Notice"},"tax_free_component":{"type":"number","description":"Tax free amount of the payment","example":5384},"taxable_component":{"type":"number","description":"Taxable amount of the payment","example":10010.1},"total_payg":{"type":"number","description":"PAYG amount","example":1250},"super":{"type":"number","description":"Superannuation amount","example":500.87},"etp_code":{"type":"string","description":"ETP code (For more information, refer to ATO website)","enum":["R","O","S","P","D","N","B","T"]},"payment_date":{"type":"string","description":"Payment date (in YYYY-MM-DD format)","example":"2026-06-01"},"financial_year":{"type":"string","description":"Financial year in which the payment happens","example":"2026"},"comment":{"type":"string","description":"Comment on ETP payment","example":"Redundancy payment"},"work_cover_rate_id":{"type":"integer","description":"Work cover rate Id (if applicable; returns -1 if N\/A)","example":1},"payroll_tax_state_id":{"type":"integer","description":"Payroll tax state Id (if applicable; returns -1 if N\/A)","example":10},"created_at":{"type":"string","description":"Timestamp when record was created","example":"2026-06-01 03:32:50"},"updated_at":{"type":"string","description":"Timestamp when record last updated","example":"2026-06-01 03:32:50"}}}}},"EmployeePayslipRequest":{"type":"object","properties":{"id":{"type":"integer","description":"Employee Id","example":30},"payslipId":{"type":"integer","description":"Payslip Id","example":1024}}},"EmployeePayslipsRequest":{"type":"object","properties":{"id":{"type":"integer","description":"Employee Id","example":30}}},"ReimbursementTypeTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"reimbursement-type"},"attributes":{"type":"object","properties":{"label":{"type":"string","description":"Reimbursement label","example":"Employee Reimbursement"},"max":{"type":"number","description":"Maximum amount possible for this reimbursement","example":"50.00"},"billed_to":{"type":"string","description":"Payer of reimbursement","example":"employer"},"add_gst_to_invoice":{"type":"boolean","description":"Add GST of this reimbursement to invoice","enum":[true,false]},"comment_enabled":{"type":"boolean","description":"Enable or disable the request for reimbursement comments","enum":[true,false]},"created_at":{"type":"string","description":"Timestamp when this reimbursement type was created","example":"2026-06-01 03:32:50"}}}}},"PendingInvoiceTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"invoice"},"attributes":{"type":"object","properties":{"trade_name":{"type":"string","description":"Invoice receiver organisation trading name","example":"Chem-mart Australia Pty Ltd"},"net_amount":{"type":"string","description":"Invoice net total amount (in $)","example":"2000.54"},"gst_amount":{"type":"string","description":"Invoice GST (in $)","example":"200.054"},"total_amount":{"type":"string","description":"Invoice total amount (in $)","example":"2200.594"},"purchase_order":{"type":"string","description":"Purchase Order \/ Cost Code of this invoice","example":"PO-00001"},"period_ending":{"type":"string","description":"Invoice end date (format: Y-m-d)","example":"2026-06-01"},"issued_date":{"type":"string","description":"Invoice issued date (format: Y-m-d)","example":"2026-06-01"},"created_date":{"type":"string","description":"Invoice created date","example":"2026-06-01"},"updated_date":{"type":"string","description":"Invoice updated date","example":"2026-06-01"},"status":{"type":"string","description":"Invoice status","enum":["Generating","Re-issued","Completed","Pending Finalisation"]},"generated_status":{"type":"number","description":"Invoice generation status (0: Pending, 1: Processed, 2: Reissued, 3: In progress","enum":[0,1,2,3]},"version":{"type":"number","description":"Version of the invoice","example":1},"invoice_history":{"type":"array","items":{"version":{"type":"number","description":"Version of the invoice","example":1},"date":{"type":"string","description":"Date of the invoice history (format: d\/m\/Y h:ia)","example":"01\/06\/2026 03:32am"},"comment":{"type":"string","description":"Comment regarding the version reason","example":"Generated Pending"},"link":{"type":"string","description":"Path to this historical invoice file","example":"storage\/client\/202\/invoices\/invoice_05.pdf"}}},"file_path":{"type":"string","description":"Invoice file path","example":"\/storage\/client\/1\/invoices\/234234o.pdf"}}},"relationships":{"type":"object","properties":{"client":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":61},"type":{"type":"integer","description":"Type of side loaded relationship","example":"client"}}}}}}}}},"GeneratedInvoiceTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"generated-invoice"},"attributes":{"type":"object","properties":{"trade_name":{"type":"string","description":"Invoice receiver organisation trading name","example":"Chem-mart Australia Pty Ltd"},"reference_po":{"type":"string","description":"Computed string for invoice reference and Purchase Order \/ Cost Code","example":"003-772 \/\/ PO-00001"},"reference":{"type":"string","description":"Reference for this invoice","example":"003-772"},"purchase_order":{"type":"string","description":"Purchase Order \/ Cost Code of this invoice","example":"PO-00001"},"period_starting":{"type":"string","description":"Invoice start date (format: Y-m-d)","example":"2026-05-26"},"period_ending":{"type":"string","description":"Invoice end date (format: Y-m-d)","example":"2026-06-01"},"period_type":{"type":"string","description":"Invoice period type","enum":["Weekly","Fortnightly","1 Week Arrears, 1 Week Advanced"]},"issued_date":{"type":"string","description":"Invoice issued date (format: Y-m-d)","example":"2026-06-01"},"due_date":{"type":"string","description":"Invoice due date (format: Y-m-d)","example":"2026-06-01"},"generated_date":{"type":"string","description":"Invoice processed date (format: Y-m-d)","example":"2026-06-01"},"net_amount":{"type":"string","description":"Invoice net total amount (in $)","example":"2000.54"},"gst_amount":{"type":"string","description":"Invoice GST (in $)","example":"200.90"},"total_amount":{"type":"string","description":"Invoice total amount (in $)","example":"2201.44"},"status":{"type":"string","description":"Invoice status","enum":["Unpaid","Paid","Overdue"]},"is_sent":{"type":"boolean","description":"Has invoice being sent?","enum":[true,false]},"file_path":{"type":"string","description":"Path of invoice file","example":"storage\/client\/202\/invoices\/invoice_22.pdf"},"invoice_item_id":{"type":"number","description":"Invoice line item id (internal reference)","example":2709},"invoice_history":{"type":"array","items":{"version":{"type":"number","description":"Version of the invoice","example":"1"},"date":{"type":"string","description":"Date of the invoice history (format: d\/m\/Y h:ia)","example":"01\/06\/2026 03:32am"},"comment":{"type":"string","description":"Comment regarding the version reason","example":"Generated Pending"},"link":{"type":"string","description":"Path to this historical invoice file","example":"storage\/client\/202\/invoices\/invoice_05.pdf"}}},"is_credit":{"type":"boolean","description":"Is this a credit note?","enum":[true,false]},"version":{"type":"number","description":"Version of the invoice","example":1},"last_edited_by":{"type":"string","description":"Name of the last admin user to perform an edit action on the invoice","example":"foundU Holdings"},"last_edited_date":{"type":"string","description":"Date of the last edit action (format: d\/m\/Y h:ia)","example":"01\/06\/2026 03:32am"},"last_credited_by":{"type":"string","description":"Name of the last admin user to perform an edit action on the invoice","example":"foundU Holdings"},"last_credited_date":{"type":"string","description":"Date of the last credit note edit action (format: d\/m\/Y h:ia)","example":"01\/06\/2026 03:32am"}}},"relationships":{"type":"object","properties":{"client":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":74},"type":{"type":"integer","description":"Type of side loaded relationship","example":"client"}}}}},"invoice-details":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":78},"type":{"type":"integer","description":"Type of side loaded relationship","example":"invoice-details"}}}}}}}}},"IssuedInvoiceDetailsTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"invoice-details"},"attributes":{"type":"object","properties":{"associated_timesheet_ids":{"type":"array","items":{"type":"string","description":"The associated timesheet Ids","example":"4381"}},"breakdown":{"type":"array","items":{"type":"object","properties":{"employee_id":{"type":"integer","description":"Invoice line item employee Id","example":51931},"employee_name":{"type":"string","description":"Invoice line item employee name","example":"John Stamp"},"position_title":{"type":"string","description":"Invoice line item position title","example":"Project Manager"},"label":{"type":"string","description":"Invoice line item label","example":"John Stamp - Wage 2026-06-01"},"rate":{"type":"number","description":"Invoice line item rate","example":25},"quantity":{"type":"number","description":"Invoice line item quantity","example":48},"gst_applied":{"type":"string","description":"Invoice line item GST applied","example":"10%"},"gst_amount":{"type":"number","description":"Invoice line item GST amount","example":42.8},"total_amount":{"type":"number","description":"Invoice line item total amount","example":458.8},"type":{"type":"integer","description":"Invoice line item type (-1: Unknown (manual line item), 0: Wages, 1: Allowance, 2: Leave, 3: Reimbursement)","enum":[-1,0,1,2,3]}}}}}}}},"EmployeeLeaveTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-leave"},"attributes":{"type":"object","properties":{"employee_id":{"type":"integer","description":"Employee Id","example":45},"employee":{"type":"object","properties":{"id":{"type":"integer","description":"Employee Id","example":45},"name":{"type":"string","description":"Employee name","example":"Michael Smith"},"has_profile_picture":{"type":"boolean","description":"Does employee have profile picture?","enum":[true,false]},"profile_picture":{"type":"string","description":"Url to employee profile picture","example":"https:\/\/api.foundu.com.au\/secure\/documents\/candidate\/45\/images\/45.jpg"},"is_salaried":{"type":"boolean","description":"Is this employee a salaried employee?","enum":[true,false]}}},"leave_rule_id":{"type":"integer","description":"Leave rule id","example":5555},"client_id":{"type":"integer","description":"Operation ID related to this employee","example":71},"amount_requested":{"type":"number","description":"Number of hours of leave requested","example":22.6},"available_balance":{"type":"number","description":"Number of leave hours available to the employee","example":200.93},"leave_hours":{"type":"number","description":"Number of hours of leave requested","example":22.6},"start_date":{"type":"string","description":"First day of the leave application","example":"2026-06-01"},"end_date":{"type":"string","description":"Last day of the leave application","example":"2026-06-01"},"reason":{"type":"string","description":"Reason for applying leave application","example":"Family reunion"},"approved":{"type":"string","description":"Is this leave application approved?","enum":["yes","no","pending"]},"status":{"type":"string","description":"Status of leave application","enum":["approved","pending","declined"]},"decline_reason":{"type":"string","description":"What is the reason if this leave application was declined?","example":"Not having enough leave balance"},"first_day_partial":{"type":"boolean","description":"Is first day a partial leave and not full day leave?","enum":[true,false]},"first_day_leave_hours":{"type":"number","description":"If first day only a partial leave, how many hours taken on first day?","example":4.5},"lodged":{"type":"string","description":"Timestamp when this leave application was lodged","example":"2026-06-01 03:32:50"},"processed":{"type":"boolean","description":"Has this leave application been processed?","enum":[true,false]},"is_partial_processed":{"type":"boolean","description":"Is this leave application partially processed? (i.e. in-progress multi-weeks application)","enum":[true,false]},"last_action_user_id":{"type":"integer","description":"User id that made the last change to this leave application","example":24},"deleted_at":{"type":"string","description":"Timestamp where this leave application was deleted","example":"2026-06-01 03:32:50"},"operation_trade_names":{"type":"string","description":"Operation trade name where employee belongs to","example":"Test Group - Brisbane"},"is_monthly_pay":{"type":"boolean","description":"Is employee paid monthly?","enum":[true,false]},"retrospective_approval_type":{"type":"integer","description":"If the leave application was approved for a past pay period. Was the leave adjusted manually or automatically?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Manual<\/td><\/tr><tr><td>2<\/td><td>Automatic<\/td><\/tr><\/table>","enum":[1,2]},"has_retrospective_paycycle":{"type":"boolean","description":"Does this leave application have retrospective paycycle?","enum":[true,false]}}},"relationships":{"type":"object","properties":{"leave-rule":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":92},"type":{"type":"integer","description":"Type of side loaded relationship","example":"leave-rule"}}}}},"leave-application-file":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":60},"type":{"type":"integer","description":"Type of side loaded relationship","example":"leave-application-file"}}}}}},"leave-application-hours":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":56},"type":{"type":"integer","description":"Type of side loaded relationship","example":"leave-application-hours"}}}}}},"leave-shift":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":95},"type":{"type":"integer","description":"Type of side loaded relationship","example":"leave-shift"}}}}},"logs":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":14},"type":{"type":"integer","description":"Type of side loaded relationship","example":"logs"}}}}}},"note-creator":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":55},"type":{"type":"integer","description":"Type of side loaded relationship","example":"note-creator"}}}}},"employee":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":24},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee"}}}}}}}}},"EmployeeLeaveApplicationFileTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"leave-application-file"},"attributes":{"type":"object","properties":{"leave_application_id":{"type":"integer","description":"Leave application Id","example":100},"file_name":{"type":"string","description":"File upload filename related to this leave application","example":"Doctor-certificate.pdf"},"created_at":{"type":"string","description":"Timestamp when leave application was created","example":"2026-06-01 03:32:50"}}}}},"EmployeeLeaveApplicationHoursTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"leave-application-hours"},"attributes":{"type":"object","properties":{"leave_application_id":{"type":"integer","description":"Leave application Id","example":100},"leave_date":{"type":"string","description":"Leave application date; for a multi-days application there would be x number of dates attached to the leave application id","example":"2026-06-01"},"week_end_date":{"type":"string","description":"End date for the current pay period","example":"2023-04-04"},"quantity":{"type":"number","description":"Number of hours of leave taken for that particular leave date","example":7.6},"start_time":{"type":"string","description":"Start time of leave (nullable)","example":"08:00"},"end_time":{"type":"string","description":"End time of leave (nullable)","example":"17:00"},"match_workpattern":{"type":"boolean","description":"Does this entry match the employee work pattern for the particular day?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"position_selection_id":{"type":"integer","description":"Position id of the employee","example":97},"paycycle_id":{"type":"integer","description":"Paycycle id related to this leave application","example":6771},"subclass_id":{"type":"integer","description":"Position Id","example":110}}},"relationships":{"type":"object","properties":{"paycycle":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":64},"type":{"type":"integer","description":"Type of side loaded relationship","example":"paycycle"}}}}}}}}},"PaycycleStatusTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"paycycle"},"attributes":{"type":"object","properties":{"status":{"type":"integer","description":"Paycycle status (-1: require reprocess, 0: pending, 1: in progress, 2: processed, 5: error)","enum":[-1,0,1,2,5]},"processed":{"type":"boolean","description":"Has this paycycle been processed?","enum":[true,false]}}}}},"EmployeeLeaveApplicationShiftTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"leave-shift"},"attributes":{"type":"object","properties":{"shift_candidate_id":{"type":"integer","description":"Employee's shift id","example":78518},"leave_app_id":{"type":"integer","description":"Leave application id","example":1921},"reason_list_id":{"type":"integer","description":"Reason list id","example":2},"actioned_by":{"type":"integer","description":"Admin user id who actioned the leave application","example":97}}},"relationships":{"type":"object","properties":{"reason-list":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":73},"type":{"type":"integer","description":"Type of side loaded relationship","example":"reason-list"}}}}}}}}},"EmployeeLeaveApplicationLogTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"logs"},"attributes":{"type":"object","properties":{"leave_application_id":{"type":"integer","description":"Leave application Id","example":1771},"user_id":{"type":"integer","description":"Admin user id","example":208},"action":{"type":"string","description":"Action performed by admin user id against this leave application","example":"approved"},"created_at":{"type":"string","description":"Timestamp of when this action log was created","example":"01 Jun 2026"},"updated_at":{"type":"string","description":"Timestamp of when this action log was last updated","example":"01 Jun 2026"}}},"relationships":{"type":"object","properties":{"note-creator":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":45},"type":{"type":"integer","description":"Type of side loaded relationship","example":"note-creator"}}}}}}}}},"UserTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"note-creator"},"attributes":{"type":"object","properties":{"name":{"type":"string","description":"User name","example":"Jason Doe"},"email":{"type":"string","description":"User email address","example":"jason@test.com.au"},"created_at":{"type":"string","description":"Date and time when this record was created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Date and time when this record was last updated","example":"2026-06-01 03:32:51"}}},"relationships":{"type":"object","properties":{"operation-user":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":82},"type":{"type":"integer","description":"Type of side loaded relationship","example":"operation-user"}}}}}},"employee-user":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":68},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-user"}}}}},"admin-user":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":36},"type":{"type":"integer","description":"Type of side loaded relationship","example":"admin-user"}}}}},"employee-email-sso-disabled-domain":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":78},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-email-sso-disabled-domain"}}}}}}}}},"ClientLoginTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"operation-user"},"attributes":{"type":"object","properties":{"operation_id":{"type":"integer","description":"Operation id","example":5},"surname":{"type":"string","description":"Operation user family name","example":"Sutherland"},"name":{"type":"string","description":"Operation user first name","example":"Jason"},"login_email":{"type":"string","description":"Operation user login email","example":"jason@test.com.au"},"phone":{"type":"string","description":"Operation user phone number","example":"0731250987"},"mobile":{"type":"string","description":"Operation user mobile number","example":"0412345678"},"login_id":{"type":"string","description":"Operation user login id","example":"55"}}},"relationships":{"type":"object","properties":{"client":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":74},"type":{"type":"integer","description":"Type of side loaded relationship","example":"client"}}}}}}}}},"EmployeePermissionsTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-user"},"attributes":{"type":"object","properties":{"status":{"type":"string","description":"Employee status","enum":["Declined","Archived","Approved","Pending",""]}}}}},"AdminTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"admin-user"},"attributes":{"type":"object","properties":{"name":{"type":"string","description":"Admin user name","example":"Jason Doe"},"email":{"type":"string","description":"Admin user email address","example":"jason@test.com.au"},"profile_pic_path":{"type":"string","description":"Admin profile picture path","example":"\/secure\/documents\/reps\/test.jpg"},"mobile":{"type":"string","description":"Admin user mobile phone","example":"0412345678"},"stp_reminder_email":{"type":"string","description":"Flag to indicate if user can receive STP reminder email\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"rep_id":{"type":"string","description":"Manager id of the current user; for possible reason, please see '\/api\/v1\/managers' route","example":"4"},"deleted_at":{"type":"string","description":"Date and time when this record was deleted","example":"2026-06-01 03:32:51"},"is_bas_agent":{"type":"string","description":"Flag to indicate if current user is a BAS agent\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"agent_type":{"type":"string","description":"BAS agent type","enum":["RAN","TAN"]},"agent_abn":{"type":"string","description":"BAS agent Australian Business Number","example":"50110219460"},"agent_number":{"type":"string","description":"BAS agent identification","example":"233554"},"agent_contact_name":{"type":"string","description":"BAS agent contact name","example":"Jason Doe"},"agent_contact_number":{"type":"string","description":"BAS agent contact phone number","example":"0412345678"},"agent_contact_email":{"type":"string","description":"BAS agent contact email address","example":"jason@test.com.au"},"agent_ssid":{"type":"numeric","description":"BAS agent Software Subscription ID","example":"1234567890"},"agent_ssid_registered":{"type":"string","description":"BAS agent SSID registered timestamp","example":"2026-06-01 03:32:51"}}}}},"EmployeeEmailInDisabledDomainTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-email-sso-disabled-domain"},"attributes":{"type":"object","properties":{"email_in_sso_disabled_domain":{"type":"boolean","description":"Is user email address in the single sign-on disabled domains?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]}}}}},"EmployeeV2Transformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee"},"attributes":{"type":"object","properties":{"external_id":{"type":"string","description":"External ID for the employee. Usually set to previous system's ID.","example":"5001"},"manager_id":{"type":"numeric","description":"ID for the employee's associated manager.","example":213},"name":{"type":"string","description":"Employee first and surname concatenated via a space","example":"Jane Doe"},"first_name":{"type":"string","description":"Employee first name","example":"Jane"},"surname":{"type":"string","description":"Employee surname","example":"Doe"},"middle_name":{"type":"string","description":"Employee middle name","example":"Anna"},"preferred_name":{"type":"string","description":"Employee preferred name","example":"Anna"},"email":{"type":"string","description":"Employee primary email address","example":"jane.smith@example.com"},"work_email":{"type":"string","description":"Employee single sign-on email address. This can be used as the SSO target","example":"jane.smith@example.com"},"mobile":{"type":"string","description":"Employee primary mobile phone number","example":"0400112233"},"has_profile_picture":{"type":"boolean","description":"Does employee have a profile picture?","enum":[true,false]},"profile_picture":{"type":"string","description":"URL for employee profile picture","example":"https:\/\/api.foundu.com.au\/secure\/documents\/candidate\/111\/images\/111.jpg"},"status":{"type":"string","description":"Employee status within the system","enum":["Available","Pending","Declined","Archived"]},"employment_type":{"type":"string","description":"Employment type","enum":["Casual","Part Time","Full Time","Labour Hire","Superannuation"]},"employment_start_date":{"type":"string","description":"Employment start date","example":"2026-06-01"},"last_worked":{"type":"string","description":"Recorded last worked date","example":"2026-06-01"},"created_at":{"type":"string","description":"Datetime string of when the employee was created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Datetime string of when the employee was last updated","example":"2026-06-01 03:32:51"},"record_last_updated_at":{"type":"string","description":"Datetime string of when employee records was last updated","example":"2026-06-01 03:32:51"},"record_last_updated_area":{"type":"string","description":"Description of area where employee record was last updated","example":"'financial' or 'details', etc."}}},"relationships":{"type":"object","properties":{"tag":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":8},"type":{"type":"integer","description":"Type of side loaded relationship","example":"tag"}}}}}},"comment":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":44},"type":{"type":"integer","description":"Type of side loaded relationship","example":"comment"}}}}}},"employee-app-settings":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":91},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-app-settings"}}}}},"employee-status":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":67},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-status"}}}}},"employee-client-exclusive":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":94},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-client-exclusive"}}}}}},"employee-employment-details":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":81},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-employment-details"}}}}},"employee-go-1":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":41},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-go-1"}}}}}},"employee-contact":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":65},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-contact"}}}}},"emergency-contact":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":10},"type":{"type":"integer","description":"Type of side loaded relationship","example":"emergency-contact"}}}}},"onboarding-overview":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":4},"type":{"type":"integer","description":"Type of side loaded relationship","example":"onboarding-overview"}}}}},"employment-status-history":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":83},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employment-status-history"}}}}},"office-code":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":73},"type":{"type":"integer","description":"Type of side loaded relationship","example":"office-code"}}}}},"current-associated-operation":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":75},"type":{"type":"integer","description":"Type of side loaded relationship","example":"current-associated-operation"}}}}}},"current-associated-location":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":33},"type":{"type":"integer","description":"Type of side loaded relationship","example":"current-associated-location"}}}}}},"current-positions":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":77},"type":{"type":"integer","description":"Type of side loaded relationship","example":"current-positions"}}}}},"employee-state-suburb":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":96},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-state-suburb"}}}}},"employee-employment-type-start-date":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":34},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-employment-type-start-date"}}}}},"employee-last-worked-date":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":26},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-last-worked-date"}}}}},"employee-registration-progress":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":75},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-registration-progress"}}}}},"employee-go1-id":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":41},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-go1-id"}}}}},"employee-go1-assigned-courses":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":87},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-go1-assigned-courses"}}}}},"employee-stp-compliance":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":81},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-stp-compliance"}}}}},"employee-cessation":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":93},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-cessation"}}}}},"current-medical":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":66},"type":{"type":"integer","description":"Type of side loaded relationship","example":"current-medical"}}}}},"hr-details":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":36},"type":{"type":"integer","description":"Type of side loaded relationship","example":"hr-details"}}}}},"custom-fields":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":29},"type":{"type":"integer","description":"Type of side loaded relationship","example":"custom-fields"}}}}}}}}},"EmployeeAppSettingsTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-app-settings"},"attributes":{"type":"object","properties":{"clock_passcode":{"type":"string","description":"Employee clock passcode","example":"2233"},"can_approve_shifts":{"type":"boolean","description":"Employee can approve shift","example":false}}}}},"EmployeeClientExclusiveTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-client-exclusive"},"attributes":{"type":"object","properties":{"client_id":{"type":"integer","description":"Employee only shows up exclusively for operation","example":1},"employee_id":{"type":"integer","description":"Employee Id","example":113}}},"relationships":{"type":"object","properties":{"client":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":55},"type":{"type":"integer","description":"Type of side loaded relationship","example":"client"}}}}}}}}},"ClientV2Transformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"client"},"attributes":{"type":"object","properties":{"trade_name":{"type":"string","description":"Operation trade name","example":"Alpha Corp"},"statement_cycle":{"type":"string","description":"Operation statement cycle","enum":{"1":"Weekly","2":"Fortnightly","20":"Advance\/arrears"}},"first_statement_week_end":{"type":"string","description":"Date of first statement (weekend)","example":"2026-06-01"}}}}},"EmployeeEmploymentDetailsTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-employment-details"},"attributes":{"type":"object","properties":{"is_ppt":{"type":"boolean","description":"Employee is permanent or part time","example":false},"casual_linked_operation_id":{"type":"integer","description":"Linked operation for casual employees","example":1}}},"relationships":{"type":"object","properties":{"client":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":87},"type":{"type":"integer","description":"Type of side loaded relationship","example":"client"}}}}}}}}},"EmployeeGo1Transformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-go-1"},"attributes":{"type":"object","properties":{"course_id":{"type":"array","items":{"type":"string","description":"Go1 course ID","example":["Safety training"]}}}}}},"EmployeeContactTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-contact"},"attributes":{"type":"object","properties":{"mobile":{"type":"string","description":"Employee mobile number","example":"0402 123 321"},"phone":{"type":"string","description":"Employee phone number","example":"0732190000"}}}}},"EmployeeEmergencyContactTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"emergency-contact"},"attributes":{"type":"object","properties":{"emergency_contact_1":{"type":"array","items":{"type":"string","description":"First emergency contact","example":{"emergency_contact_1_name":"Sam Williams","emergency_contact_1_relationship":"Sister","emergency_contact_1_contact":"0402000000","emergency_contact_1_address":"123 Eagle Street Algester, QLD"}}},"emergency_contact_2":{"type":"string","description":"Second emergency contact","example":{"emergency_contact_1_name":"Bob Williams","emergency_contact_1_relationship":"Brother","emergency_contact_1_contact":"0402000001","emergency_contact_1_address":"123 Eagle Street Algester, QLD"}}}}}},"EmployeeOnboardingOverviewTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"onboarding-overview"},"attributes":{"type":"object","properties":{"awaiting_verification":{"type":"boolean","description":"Whether or the employee is waiting for verification from admin","example":true},"onboarding_step":{"type":"integer","description":"The current onboarding step employee is on","example":1},"onboarding_progress_percent":{"type":"integer","description":"How far the employee progressed through onboarding","example":80},"accepted_timestamp":{"type":"boolean","description":"Employee aceepted timestamp","example":false},"registration_completed_timestamp":{"type":"boolean","description":"Registration completed timestamp","example":false}}}}},"EmployeeHistoricalStatusTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employment-status-history"},"attributes":{"type":"object","properties":{"employee_historical_status":{"type":"string","description":"Employee status as of 'employment_status_on' parameter","enum":["Approved","Declined","Terminated","Archived"]}}}}},"EmployeeOfficeCodeTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"office-code"},"attributes":{"type":"object","properties":{"office_code":{"type":"string","description":"Employee office code","example":"17"},"label":{"type":"string","description":"Office code label","example":"Main Office"}}}}},"EmployeeCurrentAssociatedOperationTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"current-associated-operation"},"attributes":{"type":"object","properties":{"start_date":{"type":"string","description":"Start date of the position associated with the operation","example":"2020-04-01"},"operation_id":{"type":"number","description":"Operation Id","example":1},"operation_name":{"type":"string","description":"Operation Name","example":"Brisbane Operation"},"operation_trade_name":{"type":"string","description":"Operation trade name","example":"Van Helsing Pty Ltd."}}}}},"EmployeeCurrentAssociatedLocationTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"current-associated-location"},"attributes":{"type":"object","properties":{"location":{"type":"string","description":"Location of the position (comma-separated)","example":"Kitchen"}}}}},"EmployeeCurrentPositionsTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"current-positions"},"attributes":{"type":"object","properties":{"positions":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"Position title","example":"Director"},"position_label":{"type":"string","description":"Position label","example":"Finance Director"},"allowance_group":{"type":"string","description":"Position allowance group","example":"VIC Enterprise Agreement 2020"},"position_award_max_ordinary_hours":{"type":"string","description":"Maximum ordinary hours according to allowance group","example":"38.00"},"position_award_max_ordinary_hours_calculated_per":{"type":"enum","description":"Maximum ordinary hours is calculated per week or fortnight","enum":["weekly","fortnightly"]},"classification":{"type":"string","description":"Award classification","example":"Base"},"min_hours":{"type":"string","description":"Minimum hours for position","example":"10.00"},"rate":{"type":"string","description":"Position rate","example":"36.1100"},"cost_code":{"type":"string","description":"Cost code (purchase order) of position","example":"D0101"},"location":{"type":"string","description":"Position location","example":"Brisbane Laboratory"},"type":{"type":"string","description":"Position type","enum":["full_time","part_time","casual","secondary"]},"effective_start_date":{"type":"string","description":"Effective start date of position","example":"2026-06-01"},"effective_end_date":{"type":"string","description":"Effective end date of position (if available; format: Y-m-d)","example":"2026-06-01"},"payment_type":{"type":"string","description":"Payment type for full\/part time positions","enum":["Monthly Payment","Salaried"]},"position_start_date":{"type":"string","description":"Position start date (full\/part time positions; format: Y-m-d)","example":"2026-06-01"},"max_ord_hr_per_week":{"type":"string","description":"Maximum ordinary hours per week (full\/part time positions)","example":"40"},"operation":{"type":"string","description":"Related Operation (full\/part time positions)","example":"Finance"}}}}}}}},"EmployeeStateSuburbTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-state-suburb"},"attributes":{"type":"object","properties":{"suburb":{"type":"string","description":"Employee address - Suburb","example":"Ashgrove"},"state":{"type":"string","description":"Employee address - State","example":"QLD"}}}}},"EmployeeEmploymentTypeStartDateTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-employment-type-start-date"},"attributes":{"type":"object","properties":{"employment_type":{"type":"string","description":"Employment type","enum":["Casual","Part Time","Full Time","Labour Hire","Superannuation"]},"employment_start_date":{"type":"string","description":"Employment start date","example":"2026-06-01"}}}}},"EmployeeLastWorkedTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-last-worked-date"},"attributes":{"type":"object","properties":{"last_worked":{"type":"string","description":"Date this employee last worked","example":"2026-06-01"}}}}},"EmployeeRegistrationProgressTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-registration-progress"},"attributes":{"type":"object","properties":{"progress":{"type":"integer","description":"Employee registration progress (in percent)","example":60}}}}},"EmployeeGo1IdTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-go1-id"},"attributes":{"type":"object","properties":{"go1_id":{"type":"integer","description":"Employee Go1 ID","example":4316159}}}}},"EmployeeGo1AssignedCoursesTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-go1-assigned-courses"},"attributes":{"type":"object","properties":{"assigned_courses":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Assigned Courses Relationship Id","example":1234},"can_id":{"type":"integer","description":"Candidate ID","example":1234},"lo_id":{"type":"integer","description":"Go1 Learning Object ID","example":234567},"created_at":{"type":"string","description":"Datetime string of when the relationship object was created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Datetime string of when the relationship object was last updated","example":"2026-06-01 03:32:51"}}}}}}}},"EmployeeStpComplianceTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-stp-compliance"},"attributes":{"type":"object","properties":{"income_type_code":{"type":"string","description":"Income type code used within STP packets","example":"SAW"},"income_type":{"type":"string","description":"Income type used within STP packets","example":"Salary and Wages"},"country_of_origin_code":{"type":"string","description":"Origin country codes used within STP packets","example":"AU"},"country_of_origin":{"type":"string","description":"Origin country name used within STP packets","example":"France"},"foreign_tax_rate_percent":{"type":"numeric","description":"The foreign tax percentage on the taxable foreign income","example":"25"},"is_resident":{"type":"boolean","description":"Is this employee an Australian resident for tax purposes?","enum":[true,false]},"resident_status":{"type":"string","description":"Indicates if the employee is an Australian resident, foreign resident or a working holiday maker for tax purposes","enum":["Salary and wages","Foreign employment income","Working holiday maker"]},"resident_status_code":{"type":"string","description":"Code used to indicate if the employee is an Australian resident, foreign resident or a working holiday maker for tax purposes","enum":["australian_resident","foreign_resident","working_holidaymaker"]},"training_support_loan":{"type":"boolean","description":"Indicates the employee has a Higher Education Loan Program (HELP) or Trade Support Loan (TSL) debt"},"medicare_levy_surcharge":{"type":"string","description":"Indicates the amount withheld from the employee to cover the Medicare levy surcharge","enum":["Base tier","Tier 1","Tier 2","Tier 3"]},"medicare_levy_exemption":{"type":"string","description":"Indicates if a medicare levy exemption is applied","enum":["Full","Half","No"]},"medicare_levy_reduction":{"type":"string","description":"Indicates the employees medicare levy reduction based on dependants"},"has_tax_file_number":{"type":"boolean","description":"Indicates the employee has a valid Tax File Number assigned to their profile"},"tax_free_threshold_from_employer":{"type":"boolean","description":"Indicates if the employee is claiming a tax-free threshold from this employer"},"working_holiday_maker_registered_employer":{"type":"boolean","description":"Indicates if the employer registered for working holiday makers"},"seniors_pensioners":{"type":"string","description":"Indicates if employee claim as senior\/pensioner","example":"no"}}}}},"EmployeeCessationTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-cessation"},"attributes":{"type":"object","properties":{"cessation_type_code":{"type":"string","description":"Cessation type code for STP reporting purposes","enum":["V","I","D","R","F","C","T"]},"cessation_date":{"type":"string","description":"Date of cessation","example":"1st Jun 2026"},"pending_cessation_type_code":{"type":"string","description":"Cessation type code for STP reporting purposes (pending\/in the future)","enum":["V","I","D","R","F","C","T"]},"pending_cessation_date":{"type":"string","description":"Pending \/ Future date of cessation","example":"1st Jun 2026"},"cessation_type_reason":{"type":"string","description":"Description of cessation type code","enum":["Voluntary cessation","Ill health","Deceased","Redundancy","Dismissal","Contract cessation","Transfer"]},"reason":{"type":"string","description":"Cessation reason as inputted by administrator or supervisor","example":"Resigned today via phone call"}}}}},"EmployeeCurrentMedicalTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"current-medical"},"attributes":{"type":"object","properties":{"attributes":{"type":"object","properties":{"sample medical questions":{"type":"string","description":"This section contains an array of medical questions and answers","example":"Eyesight issues?"}}}}}}},"EmployeeHrV2Transformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"hr-details"},"attributes":{"type":"object","properties":{"title":{"type":"string","description":"Employee title","example":"Mr"},"address":{"type":"object","properties":{"street":{"type":"string","description":"Employee address street field. Empty for address that can not be found on Google.","example":"123 Eagle Street"},"suburb":{"type":"string","description":"Employee address suburb field. Empty for address that can not be found on Google.","example":"Milton"},"state":{"type":"string","description":"Employee address state field. Empty for address that can not be found on Google.","example":"QLD"},"postcode":{"type":"string","description":"Employee address postcode field. Empty for address that can not be found on Google.","example":"4120"},"full_address":{"type":"string","description":"Employee full address. Any address that can not be found on Google will be inserted into this field","example":"123 Eagle Street, Milton QLD, 4123"},"country":{"type":"string","description":"Employee address - Country","example":"Australia"},"country_code":{"type":"string","description":"Employee address - Country Code","example":"AU"}}},"dob":{"type":"string","description":"Employee date of birth. Format: Y-m-d","example":"1991-01-03"},"employment_start_date":{"type":"string","description":"Employment start date. Format: Y-m-d","example":"1991-01-03"},"gender":{"type":"string","description":"Employee gender","example":"female"},"gender_detail":{"type":"string","description":"Additional gender information","example":"Gender non-conforming"},"income_type_code":{"type":"string","description":"Income type code id","example":"SAW"},"country_of_origin_code":{"type":"string","description":"Country of origin code id","example":"NZ"},"manager":{"type":"string","description":"Employee's manager id","example":"2"},"manager_name":{"type":"string","description":"Employee's manager name","example":"John Johnson"},"office_code":{"type":"string","description":"Employee office code id","example":"2"},"office_code_label":{"type":"string","description":"Label for office code","example":"International Office"},"resume":{"type":"string","description":"Path to employee resume","example":"\/storage\/candidate\/19\/documents\/Resume-1522012.pdf"}}}}},"EmployeeCustomFieldsTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"custom-fields"},"attributes":{"type":"object","properties":{"type":{"type":"string","description":"Object type - set to 'custom-fields'","example":"custom-fields"},"id":{"type":"string","description":"employee id","example":"3"},"attributes":{"type":"object","properties":{"data":{"type":"object","properties":{"custom field x":{"type":"object","properties":{"field 1":{"type":"string","description":"custom field key and value 1"},"field n":{"type":"string","description":"custom field key and value n"}}}}}}}}}}},"RosterBranchV2Transformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"branch"},"attributes":{"type":"object","properties":{"client_id":{"type":"string","description":"Operation ID related to the roster branch","example":"2"},"loc_id":{"type":"string","description":"Location ID of the roster branch as specified in Platform Settings -> Locations Admin page","example":"1"},"state_id":{"type":"string","description":"State ID of the location of the roster branch\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>ACT<\/td><\/tr><tr><td>2<\/td><td>NSW<\/td><\/tr><tr><td>3<\/td><td>NT<\/td><\/tr><tr><td>4<\/td><td>QLD<\/td><\/tr><tr><td>5<\/td><td>SA<\/td><\/tr><tr><td>6<\/td><td>TAS<\/td><\/tr><tr><td>7<\/td><td>VIC<\/td><\/tr><tr><td>8<\/td><td>WA<\/td><\/tr><\/table>","enum":[1,2,3,4,5,6,7,8]},"name":{"type":"string","description":"Roster branch name","example":"Morning Shift for Store A"},"short_label":{"type":"string","description":"System-generated label for this roster branch","example":"'MSfSA' for 'Morning Shift for Store A'"},"street":{"type":"string","description":"Street name of the roster branch location","example":"241 Queen Street"},"suburb":{"type":"string","description":"Suburb of the roster branch location","example":"Milton"},"postcode":{"type":"string","description":"Postcode of the roster branch location","example":"4001"},"created_at":{"type":"string","description":"Datetime string of when the roster branch was created","example":"2026-06-01 03:32:51"},"archived_at":{"type":"string","description":"DateTime string of when the roster was archived","example":"2026-06-01 03:32:51"},"contact_name":{"type":"string","description":"Contact name for the roster branch","example":"John Smith"},"contact_number":{"type":"string","description":"Contact number for the roster branch","example":"0412345678"},"po":{"type":"string","description":"Purchase Order or Cost Code of the roster branch","example":"PO-20192"},"ordinary_hours":{"type":"number","description":"Maximum ordinary hours per day for this roster branch","example":"6.5"},"roster_bg_color":{"type":"string","description":"Custom colour code for roster background; can be in rgb format or css colour name","example":"#000000"},"note":{"type":"string","description":"Roster branch note, 255 characters maximum","example":"Morning roster for shop A"},"note_created_by":{"type":"string","description":"User id of the user that created the note for this roster branch","example":"93"},"note_created_at":{"type":"string","description":"Datetime string of when the roster note was created","example":"2026-06-01 03:32:51"},"note_visible_to_employee":{"type":"boolean","description":"Setting value whether roster branch note is visible to employee; 1 for true, 0 for false\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","example":1},"location_clock_latitude":{"type":"number","description":"Latitude of the roster branch clock location","example":-19.3130024},"location_clock_longitude":{"type":"number","description":"Longitude of the roster branch clock location","example":146.7291969},"location_clock_radius":{"type":"number","description":"The radius (in m) from roster location, where employees can safely clock in from their own device using foundU Employee app","example":5},"unapproved_shift_dynamic_comms_scheduler_day":{"type":"string","description":"The day of the week for the scheduler to run","example":"Monday"},"unapproved_shift_dynamic_comms_scheduler_time":{"type":"number","description":"The time of the day for the scheduler to run (0-23)","example":13}}},"relationships":{"type":"object","properties":{"client":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":22},"type":{"type":"integer","description":"Type of side loaded relationship","example":"client"}}}}},"location":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":16},"type":{"type":"integer","description":"Type of side loaded relationship","example":"location"}}}}},"shift-dynamic-comms-template-settings":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":35},"type":{"type":"integer","description":"Type of side loaded relationship","example":"shift-dynamic-comms-template-settings"}}}}},"note-creator":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":64},"type":{"type":"integer","description":"Type of side loaded relationship","example":"note-creator"}}}}},"roster-comment":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":69},"type":{"type":"integer","description":"Type of side loaded relationship","example":"roster-comment"}}}}}},"qualification":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":1},"type":{"type":"integer","description":"Type of side loaded relationship","example":"qualification"}}}}}},"tag":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":17},"type":{"type":"integer","description":"Type of side loaded relationship","example":"tag"}}}}}}}}}},"DynamicCommsTemplateSettingsTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"shift-dynamic-comms-template-settings"},"attributes":{"type":"object","properties":{"comms_to_operation_manager":{"type":"integer","description":"Flag to indicate if operation manager should be notified\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"comms_to_employee_manager":{"type":"integer","description":"Flag to indicate if employee's manager should be notified\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]}}}}},"RosterCommentTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"roster-comment"},"attributes":{"type":"object","properties":{"comment":{"type":"string","description":"Comment text","example":"This roster address needs to be updated"},"branch_id":{"type":"string","description":"Roster branch id","example":"23"},"user_id":{"type":"string","description":"User id of the comment creator","example":"116"},"comment_date":{"type":"string","description":"Date when this comment was created","example":"2026-06-01"},"created_at":{"type":"string","description":"Date and time when this record was created","example":"2026-06-01 03:32:51"}}}}},"RosterBranchQualificationTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"qualification"},"attributes":{"type":"object","properties":{"id":{"type":"int","description":"Qualification id","example":"23"},"name":{"type":"string","description":"Qualification name","example":"Forklift Operator"},"type":{"type":"string","description":"Qualification type","example":"License"}}},"relationships":{"type":"object","properties":{"qualificationExpiry":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":86},"type":{"type":"integer","description":"Type of side loaded relationship","example":"qualificationExpiry"}}}}}}}}},"CandidateQualificationExpiryTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"qualificationExpiry"},"attributes":{"type":"object","properties":{"id":{"type":"int","description":"Qualification id","example":23},"can_id":{"type":"int","description":"Candidate id","example":3},"filename":{"type":"string","description":"First_Aid_Certificate.jpeg","example":"License"},"expiry":{"type":"string","description":"Expiry date","example":"2026-06-01 03:32:51"},"email_sent":{"type":"int","description":"Email sent","example":1},"email_sent_date":{"type":"int","description":"Email sent date","example":"2026-06-01 03:32:51"},"captured_date":{"type":"string","description":"Captured date","example":"2026-06-01"},"licence_number":{"type":"string","description":"License number","example":"123432"},"assess_date":{"type":"string","description":"Assess date","example":"2026-06-01"},"qualification_lookup_id":{"type":"string","description":"Qualification Id","example":3}}}}},"RosterBranchTagTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"tag"},"attributes":{"type":"object","properties":{"id":{"type":"int","description":"Tag id","example":"23"},"label":{"type":"string","description":"Tag name","example":"Cafe"}}}}},"DeductionTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"deduction_type"},"attributes":{"type":"object","properties":{"name":{"type":"string","description":"Deduction title name","example":"Deduction overpayment"},"val_type":{"type":"enum","description":"Type of deduction value\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>$<\/td><td>Dollar value<\/td><\/tr><tr><td>%<\/td><td>Percentage<\/td><\/tr><\/table>","enum":["$","%"],"example":"$"},"from":{"type":"enum","description":"Deduction from","enum":["gross","net"],"example":"gross"},"pay_out":{"type":"integer","description":"pay out","example":1},"payment_summary":{"type":"integer","description":"Payment summary","example":1},"deduct_from_net":{"type":"integer","description":"Deduct from net value","example":0},"type":{"type":"string","description":"Either \"deduction\" or \"salary_sacrifice\"","example":"salary_sacrifice"},"stp_category_label":{"type":"string","description":"STP category label","example":"Fees"},"deleted":{"type":"integer","description":"Is this deduction item deleted?","enum":["true (1)","false (0)"],"example":0},"system_type":{"type":"integer","description":"Is this a system-managed deduction?","enum":["user (0)","system (1)"],"example":0}}}}},"DeductionV2Transformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"deduction"},"attributes":{"type":"object","properties":{"deduction_type_id":{"type":"integer","description":"The type of deduction this is. Refer to the deduction type included relational data for more details.","example":10},"employee_id":{"type":"integer","description":"The employee id this deduction is setup for.","example":213},"method":{"type":"enum","description":"The payment occurrence of the deduction.\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>one-off<\/td><td>A total amount paid from a single payslip.<\/td><\/tr><tr><td>instalments<\/td><td>A total amount paid over multiple payslips.<\/td><\/tr><tr><td>recurring<\/td><td>No total amount. Repeats over a timeframe.<\/td><\/tr><\/table>","enum":["one-off","instalments","recurring"]},"amount":{"type":"numeric","description":"How much in total is to be deducted.","example":1050.99},"per_cycle":{"type":"numeric","description":"Amount to be deducted per payslip. * Used with instalments method","example":100.5},"applicable_cycles":{"type":"integer","description":"How many pay cycles this deduction will be paid over.","example":9},"threshold":{"type":"numeric","description":"A deduction will not be made on any payslips where a deduction would lower net pay below a threshold amount","example":100},"paid":{"type":"numeric","description":"How much of the deduction has already been paid.","example":100},"on_next_pay":{"type":"numeric","description":"Automatically attempt the deduction on each payslip until it can be successfully taken.","example":100},"published":{"type":"boolean","description":"Is the deduction published? Unpublished deductions are not visible on employee profile.","example":false},"recurring":{"type":"boolean","description":"Is this deduction recurring?","example":false},"recurring_from":{"type":"string","description":"When the recurring deduction will start from.","example":"2025-01-01"},"recurring_till":{"type":"string","description":"When the recurring deduction will end.","example":"2025-01-30"},"acc_name":{"type":"string","description":"The account name of the bank account if the deduction is to be paid out to an external account.","example":"John Doe"},"acc_no":{"type":"string","description":"The account number of the bank account if the deduction is to be paid out to an external account","example":"123456789"},"bsb":{"type":"string","description":"The bsb of the bank account if the deduction is to be paid out to an external account","example":"001-001"},"file":{"type":"string","description":"Onboarding deduction file name, if set.","example":"John Doe"},"reference":{"type":"string","description":"Included alongside the deduction name on payslips and invoices","example":"Internal Ref# 1232323"},"external_reference":{"type":"string","description":"Used to assist with reporting in external systems. Employee will not see this reference","example":"2313343434"},"comments":{"type":"string","description":"Comments about the deduction. Not visible to employees.","example":"Must be paid back due to expenses"},"is_protected_earnings":{"type":"boolean","description":"Does the deduction fall under protected earnings?","example":true},"protected_threshold":{"type":"numeric","description":"What the dollar amount is for protected earnings.","example":100},"protect_only_this_deduction":{"type":"boolean","description":"Does the protected earnings only apply to this deduction?","example":true},"created_by":{"type":"string","description":"The user who created this deduction for the employee.","example":"John Doe"},"created_at":{"type":"string","description":"When the deduction was added to the employee.","example":"2025-01-01 00:00:00"},"updated_by":{"type":"string","description":"The user who updated this deduction for the employee.","example":"Jane Smith"},"updated_at":{"type":"string","description":"When this deduction was last updated. Does not include payments.","example":"2025-01-05 00:00:00"},"deleted_by":{"type":"string","description":"The user who deleted this deduction from the employee.","example":"Jane Doe"},"deleted_at":{"type":"string","description":"When this deduction was deleted from the employee.","example":"2025-02-05 10:00:00"},"ended_by":{"type":"string","description":"The user that ended the deduction.","example":"John Smith"},"ended_at":{"type":"string","description":"When the deduction was ended for the employee.","example":"2025-02-01 10:00:00"},"completed_at":{"type":"string","description":"When the deduction was completed for the employee.","example":"2025-02-01 10:30:00"},"state":{"type":"enum","description":"What is the current state of the deduction.","enum":["active","ended"]}}},"relationships":{"type":"object","properties":{"employee":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":86},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee"}}}}},"deduction_type":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":40},"type":{"type":"integer","description":"Type of side loaded relationship","example":"deduction_type"}}}}},"history":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":2},"type":{"type":"integer","description":"Type of side loaded relationship","example":"history"}}}}},"payments":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":36},"type":{"type":"integer","description":"Type of side loaded relationship","example":"payments"}}}}}}}}},"EmployeeV2LookupTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee"},"attributes":{"type":"object","properties":{"id":{"type":"integer","description":"Employee ID","example":1},"name":{"type":"string","description":"Employee first, middle and surname concatenated via a space","example":"Jane Doe Smith"},"name_parts":{"type":"object","description":"Employee name split into individual attributes.","properties":{"first_name":{"type":"string","description":"Employee first name","example":"Jane"},"middle_name":{"type":"string","description":"Employee middle name","example":"Doe"},"surname":{"type":"string","description":"Employee surname","example":"Smith"}}},"preferred_name":{"type":"string","description":"Employees preferred name","example":"Janey"},"has_profile_picture":{"type":"boolean","description":"Flag to determine if employee has uploaded a profile picture","example":true}}}}},"DeductionHistoryTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"history"},"attributes":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"deduction_id":{"type":"integer","description":"The deduction record this entry relates to on the employee profile.","example":10},"paycycle_id":{"type":"integer","description":"The paycycle id this deduction has been applied to.","example":213},"paycycle_version":{"type":"integer","description":"The paycycle version this deduction has been applied to.","example":213},"event_type":{"type":"enum","description":"The event type of this history record.\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>Created<\/td><\/tr><tr><td>2<\/td><td>Created from paycycle<\/td><\/tr><tr><td>3<\/td><td>Edited<\/td><\/tr><tr><td>4<\/td><td>Payment<\/td><\/tr><tr><td>5<\/td><td>Ended manually<\/td><\/tr><tr><td>6<\/td><td>Ended date reached<\/td><\/tr><tr><td>7<\/td><td>Ended total reached<\/td><\/tr><tr><td>8<\/td><td>Ended by system<\/td><\/tr><tr><td>9<\/td><td>Restored<\/td><\/tr><tr><td>10<\/td><td>Adjusted<\/td><\/tr><\/table>","enum":[1,2,3,4,5,6,7,8,9,10]},"event_type_label":{"type":"enum","description":"The event type label of this history record.","enum":["Created","Edited","Payment","Ended","Restored","Adjusted"]},"event_description":{"type":"string","description":"Small description of changes.","example":"Bank Details"},"admin_comment":{"type":"string","description":"Comment given by admin for the action taken.","example":"Manually updated remaining balance."},"created_by":{"type":"string","description":"The user who created this deduction for the employee.","example":"John Doe"},"created_at":{"type":"string","description":"When this deduction action was done.","example":"2025-01-01 00:00:00"},"updated_at":{"type":"string","description":"When this deduction action was done.","example":"2025-01-05 00:00:00"}}}}}}}},"DeductionPaymentsTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"payments"},"attributes":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"amount":{"type":"float","description":"The paid amount on the paycycle.","example":213.22},"paycycle_id":{"type":"integer","description":"Which paycycle record this amount was paid under","example":213},"paycycle_version":{"type":"integer","description":"Which paycycle record version this amount was paid under.","example":2},"period_ending":{"type":"string","description":"The paycycle period ending date of the paycycle.","example":"2025-01-01"},"payment_date":{"type":"string","description":"The paycycle payment date of the paycycle.","example":"2025-01-05"}}}}}}}},"DeductionCreateRequest":{"type":"object","properties":{"employee_ids":{"description":"Employee IDs","type":"array_of_integers","example":[18,20]},"pay_separate_account":{"type":"boolean","description":"Should this deduction go to separate employer's bank account?","enum":[1,0]},"account_name":{"type":"string","description":"Bank account name (required if 'pay_separate_account' is true.)","example":"John Doe"},"account_number":{"type":"string","description":"Bank account number (required if 'pay_separate_account' is true.)","example":"123456780"},"bsb":{"type":"string","description":"Bank BSB number (required if 'pay_separate_account' is true.)","example":"001-001"},"deduction_type":{"type":"integer","description":"Deduction type, see <a href=\"#tag\/Deductions\/operation\/api_v2_deductions_types_GET\">deduction types<\/a> to get the list"},"deduction_method":{"type":"string","description":"Possible values for deduction method","enum":["recurring","instalments","one-off"]},"recurring":{"type":"boolean","description":"Is this deduction recurring?","enum":[1,0]},"recurring_from":{"type":"string","description":"Deduction starting date (required if 'on_next_pay' is false.)","example":"2026-06-01"},"recurring_till":{"type":"string","description":"Deduction end date (if recurring)","example":"2026-06-01"},"amount":{"type":"number","description":"Deduction amount","example":"100.50"},"per_cycle":{"type":"number","description":"Per cycle deduction amount","example":"10.50"},"threshold_amount":{"type":"number","description":"Deduction will not be made if it will lower net pay below threshold amount","example":"100.50"},"reference":{"type":"string","description":"Reference to deduction, included with deduction name on payslips and invoices","example":"Monthly Deduction"},"external_reference":{"type":"string","description":"Used to assist on reporting to external systems","example":"Monthly Deduction"},"comments":{"type":"string","description":"Comments on deduction","example":"Monthly Deduction for John Doe, recurring first week each month"},"on_next_pay":{"type":"boolean","description":"Attempt to apply deduction on next payslip until it's successful","enum":[1,0]},"is_protected_earnings":{"type":"boolean","description":"Is this deduction protected earnings? (Protected earnings means there is a minimum net pay amount to remain after deductions are applied)","enum":[1,0]},"protected_threshold":{"type":"numeric","description":"Minimum amount of net pay amount to remain after deductions are applied, if 'is_protected_earnings' is true.","example":"100.50"},"protect_only_this_deduction":{"type":"boolean","description":"Protect only this deduction?","enum":[1,0]}}},"DeductionUpdateRequest":{"type":"object","properties":{"account_name":{"type":"string","description":"Bank account name (required if 'pay_separate_account' is true.)","example":"John Doe"},"account_number":{"type":"string","description":"Bank account number (required if 'pay_separate_account' is true.)","example":"123456789"},"bsb":{"type":"string","description":"Bank BSB number (required if 'pay_separate_account' is true.)","example":"001-001"},"recurring_till":{"type":"string","description":"Deduction end date (if recurring)","example":"2026-06-01"},"threshold_amount":{"type":"number","description":"Deduction will not be made if it will lower net pay below threshold amount","example":100.5},"reference":{"type":"string","description":"Reference to deduction, included with deduction name on payslips and invoices","example":"Monthly Deduction"},"external_reference":{"type":"string","description":"Used to assist on reporting to external systems","example":"Monthly Deduction"},"comments":{"type":"string","description":"Comments on deduction","example":"Monthly Deduction for John Doe, recurring first week each month"},"protected_threshold":{"type":"number","description":"Minimum amount of net pay amount to remain after deductions are applied, if 'is_protected_earnings' is true.","example":100.5}}},"DeductionEndRequest":{"type":"object","properties":{"reason":{"type":"string","description":"Optional. Reason to end this deduction.","example":"Transferred remaining amount in full."}}},"ApproveShiftV2SearchRequest":{"type":"object","properties":{"filterIds":{"type":"array","description":"Get specific shifts (you still need the start and end filters for now)","example":[123,456,789],"items":{"type":"integer"}},"filterStartDate":{"type":"string","description":"Set the filter start date for the request","example":"2026-06-01"},"filterEndDate":{"type":"string","description":"Set the filter end date for the request","example":"2026-06-01"},"filterDates":{"type":"array","description":"Filter by specific dates (Y-m-d)","example":["2025-09-08","2025-09-09"],"items":{"type":"string"}},"filterOperation":{"type":"array","description":"Filter the results by operation Id(s)","example":[120,121],"items":{"type":"integer"}},"filterRoster":{"type":"array","description":"Filter the results by roster branch Id(s)","example":[278,279],"items":{"type":"integer"}},"filterEmployee":{"type":"array","description":"Filter the results by employee Id(s)","example":[10034,10035],"items":{"type":"integer"}},"filterShiftCreation":{"type":"string","description":"Filter the results by creator of shifts","enum":["all","admin","employee"]},"filterShiftType":{"type":"array","description":"Filter the results by shift type","example":["approved"],"items":{"type":"string","enum":["all","unapproved","approved","declined","unrostered"]}},"filterOfficeCode":{"type":"array","description":"Filter the results by office code Id(s)","example":[1,2,3],"items":{"type":"integer"}},"filterAllowancesOnly":{"type":"boolean","description":"Filter the results to only include shifts with allowances","example":1},"filterShiftWithQuestionnaireComment":{"type":"boolean","description":"Filter the results to only include shifts with questionnaire comments","example":1},"filterUpdatedSince":{"type":"string","description":"Filter the results to records updated since timestamp","example":"2026-06-01 03:32:51"},"include":{"type":"string","description":"Include data relationships","enum":["tags","tag-groups"]}}},"ApproveShiftValidationRequest":{"type":"object","properties":{"branch_id":{"type":"string","description":"Roster branch Id","example":"54"},"employee_id":{"type":"string","description":"Employee Id","example":"1065"},"employee_ids":{"type":"array","description":"Employee Ids for offer validation","items":{"type":"integer"},"example":[1065,2048]},"shift_start":{"type":"string","description":"Date and time when shift starts","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"Date and time when shift ends","example":"2026-06-01 03:32:51"},"breaks":{"type":"array","items":{"type":"object","properties":{"start":{"type":"string","description":"Date and time of break start","example":"2026-06-01 03:32:51"},"break_length":{"type":"numeric","description":"The length of the break in hours and minutes","example":"0.5"},"break_is_payable":{"type":"boolean","description":"Flag to indicate if break is payable","enum":[0,1]}}}},"position_id":{"type":"string","description":"Position Id for this shift","example":"439"},"position_group_id":{"type":"string","description":"Employee position group id for this shift (if applicable)","example":"1"},"shift_id":{"type":"string","description":"Shift Id to be validated","example":"38238"},"include_blocked":{"type":"boolean","description":"Whether to include blocked employees in validation","example":false},"apply_position_exclusions":{"type":"boolean","description":"Whether to apply position exclusions","example":true}}},"ApproveShiftV2Request":{"type":"object","properties":{"approve":{"type":"array","items":{"type":"object","properties":{"shift_id":{"type":"string","description":"Roster shift employee Id","example":"38375"},"approved_start":{"type":"string","description":"Approved start time of this shift","example":"2026-06-01 03:32:51"},"approved_end":{"type":"string","description":"Approved end time of this shift","example":"2026-06-01 03:32:51"},"approved_break_length":{"type":"string","description":"Approved break length of this shift","example":"00:30"},"is_pre_approved":{"type":"boolean","description":"Is this shift pre-approved?","enum":[true,false]}}}}}},"CreateApproveShiftsApiRequest":{"type":"object","properties":{"branch_id":{"type":"string","description":"Roster branch Id","example":"54"},"shift_start":{"type":"string","description":"Date and time when shift starts","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"Date and time when shift ends","example":"2026-06-01 03:32:51"},"employee_id":{"type":"string","description":"Employee Id","example":"1065"},"position_id":{"type":"string","description":"Position Id for this shift","example":"439"},"position_group_id":{"type":"string","description":"Employee position group id for this shift (if applicable)","example":"1"},"break_length":{"type":"string","description":"Break length of the shift. (Please use breaks instead)","example":"00:30","deprecated":true},"breaks":{"type":"array","description":"Break length of the shift","items":{"type":"object","properties":{"start":{"type":"string","format":"datetime","example":"2021-10-04 09:00:00","description":"The time of when the break will start"},"length":{"type":"number","format":"float","example":0.5,"description":"The break duration"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]}}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5}}}},"comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment to be added","example":"Employee should arrive 10 minutes early"},"visible_to_employee":{"type":"string","description":"Flag to make this comment visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>visible<\/td><\/tr><tr><td>0<\/td><td>hidden<\/td><\/tr><\/table>","enum":["1","0"]},"comment_id":{"type":"string","description":"If set, will update an existing comment with specified Id; use in conjunction with 'edited'","example":"100"},"edited":{"type":"boolean","description":"This property is required. If set to true, will update an existing comment; use in conjunction with 'comment_id'","enum":[true,false]},"to_delete":{"type":"boolean","description":"This property is required. To delete an existing comment, set this to true (in conjunction with 'comment_id'), otherwise, set to false","enum":[true,false]},"saved":{"type":"boolean","description":"This property is required. To create a new comment or update existing comment, set this to false","enum":[true,false]}}}},"is_holiday":{"type":"string","description":"Set the flag if shift occurs on a holiday\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td><\/td><td>Not a holiday<\/td><\/tr><tr><td>0<\/td><td>Holiday; treat as normal day, standard rules apply<\/td><\/tr><tr><td>1<\/td><td>Holiday; set as public holiday, shift will be paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>Holiday; pay base rate, employee normal ordinary rate will be used, no overtime or shift loadings will be applied<\/td><\/tr><\/table>","enum":[null,0,1,2]},"until_end_time_required":{"type":"string","description":"Set this if employee is required until shift end time\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["0","1"]},"did_not_work":{"type":"string","description":"Set this to 1 if employee did not work during the shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_rule":{"type":"array","items":{"type":"object","properties":{"absent_comment":{"type":"string","description":"Description or reason for absence","example":"Covid Isolation"},"candidate_submitted":{"type":"string","description":"Is employee submitting this leave?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_pay_nopay":{"type":"string","description":"Indicates if leave is paid or unpaid leave","enum":["pay","nopay"]},"leave_rule_amount":{"type":"string","description":"Number of hours taken for this leave","example":"5.5"},"leave_rule_id":{"type":"string","description":"Leave rule id used (or null, if not applicable)","example":"5556"},"leave_title":{"type":"string","description":"Title of leave (based on leave recorded on system) or custom title for this shift","example":"Decline Reason"},"reason":{"type":"string","description":"Reason for leave; for possible values, look at the '\/api\/v1\/reason-list' route","example":"Approved Leave"},"reason_id":{"type":"integer","description":"Reason id in record; for possible values, look at the '\/api\/v1\/reason-list' route","example":2}}}}}},"UpdateApproveShiftsApiRequest":{"type":"object","properties":{"shift_id":{"type":"string","description":"Shift Id to be edited","example":"38238"},"clock_id":{"type":"string","description":"Clock app user id (if applicable)","example":"100"},"branch_id":{"type":"string","description":"Roster branch Id","example":"54"},"shift_start":{"type":"string","description":"Date and time when shift starts","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"Date and time when shift ends","example":"2026-06-01 03:32:51"},"employee_id":{"type":"string","description":"Employee Id","example":"1065"},"position_id":{"type":"string","description":"Position Id for this shift","example":"439"},"position_group_id":{"type":"string","description":"Employee position group id for this shift (if applicable)","example":"1"},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5}}}},"comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment to be added","example":"Employee should arrive 10 minutes early"},"visible_to_employee":{"type":"string","description":"Flag to make this comment visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>visible<\/td><\/tr><tr><td>0<\/td><td>hidden<\/td><\/tr><\/table>","enum":["1","0"]},"comment_id":{"type":"string","description":"If set, will update an existing comment with specified Id; use in conjunction with 'edited'","example":"100"},"edited":{"type":"boolean","description":"This property is required. If set to true, will update an existing comment; use in conjunction with 'comment_id'","enum":[true,false]},"to_delete":{"type":"boolean","description":"This property is required. To delete an existing comment, set this to true (in conjunction with 'comment_id'), otherwise, set to false","enum":[true,false]},"saved":{"type":"boolean","description":"This property is required. To create a new comment or update existing comment, set this to false","enum":[true,false]}}}},"is_holiday":{"type":"string","description":"Set if this shift occurs on a holiday\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>null<\/td><td>Not a holiday<\/td><\/tr><tr><td>0<\/td><td>Holiday; treat as normal day, standard rules apply<\/td><\/tr><tr><td>1<\/td><td>Holiday; set as public holiday, shift will be paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>Holiday; pay base rate, employee normal ordinary rate will be used, no overtime or shift loadings will be applied<\/td><\/tr><\/table>","enum":[null,0,1,2]},"until_end_time_required":{"type":"string","description":"Set this if employee is required until shift end time\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["0","1"]},"did_not_work":{"type":"string","description":"Set this to 1 if employee did not work during the shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"breaks":{"type":"array","items":{"type":"object","properties":{"start":{"type":"string","description":"Date and time of break start","example":"2026-06-01 03:32:51"},"break_length":{"type":"numeric","description":"The length of the break in hours and minutes","example":"0.5"},"break_is_payable":{"type":"boolean","description":"Flag to indicate if break is payable","enum":[0,1]}}}},"leave_rule":{"type":"array","items":{"type":"object","properties":{"absent_comment":{"type":"string","description":"Description or reason for absence","example":"Covid Isolation"},"candidate_submitted":{"type":"string","description":"Is employee submitting this leave?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_pay_nopay":{"type":"string","description":"Indicates if leave is paid or unpaid leave","enum":["pay","nopay"]},"leave_rule_amount":{"type":"string","description":"Number of hours taken for this leave","example":"5.5"},"leave_rule_id":{"type":"string","description":"Leave rule id used (or null, if not applicable)","example":"5556"},"leave_title":{"type":"string","description":"Title of leave (based on leave recorded on system) or custom title for this shift","example":"Decline Reason"},"reason":{"type":"string","description":"Reason for leave; for possible values, look at the '\/api\/v1\/reason-list' route","example":"Approved Leave"},"reason_id":{"type":"integer","description":"Reason id in record; for possible values, look at the '\/api\/v1\/reason-list' route","example":2}}}}}},"DeclineShiftV2Request":{"type":"object","properties":{"decline":{"type":"array","items":{"type":"object","properties":{"shift_id":{"type":"string","description":"Shift Id","example":"38375"},"clock_id":{"type":"string","description":"Clock app user id","example":"1100"},"leave_rule":{"type":"array","items":{"type":"object","properties":{"absent_comment":{"type":"string","description":"Description or reason for absence","example":"Covid Isolation"},"candidate_submitted":{"type":"string","description":"Is employee submitting this leave?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_pay_nopay":{"type":"string","description":"Indicates if leave is paid or unpaid leave","enum":["pay","nopay"]},"leave_rule_amount":{"type":"string","description":"Number of hours taken for this leave","example":"5.5"},"leave_rule_id":{"type":"string","description":"Leave rule id used (or null, if not applicable)","example":"5556"},"leave_title":{"type":"string","description":"Title of leave (based on leave recorded on system) or custom title for this shift","example":"Decline Reason"},"reason":{"type":"string","description":"Reason for leave; for possible values, look at the '\/api\/v1\/reason-list' route","example":"Approved Leave"},"reason_id":{"type":"integer","description":"Reason id in record; for possible values, look at the '\/api\/v1\/reason-list' route","example":2}}}}}}}}},"AddOverTimeV2Request":{"type":"object","properties":{"shifts":{"type":"array","items":{"type":"object","properties":{"shift_id":{"type":"string","description":"Roster employee shift Id","example":"38288"},"shift_start":{"type":"string","description":"Start time of the shift","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"End time of the shift","example":"2026-06-01 03:32:51"}}}}}},"BulkCreateApproveShiftApiRequest":{"type":"object","properties":{"shifts":{"type":"array","items":{"type":"object","properties":{"branch_id":{"type":"string","description":"Roster branch Id","example":"54"},"shift_start":{"type":"string","description":"Date and time when shift starts","example":"2026-06-01 03:32:51"},"shift_end":{"type":"string","description":"Date and time when shift ends","example":"2026-06-01 03:32:51"},"employee_id":{"type":"string","description":"Employee Id","example":"1065"},"position_id":{"type":"string","description":"Position Id for this shift","example":"439"},"position_group_id":{"type":"string","description":"Employee position group id for this shift (if applicable)","example":"1"},"break_length":{"type":"string","description":"Break length of the shift. (Please use breaks instead)","example":"00:30","deprecated":true},"breaks":{"type":"array","description":"Break length of the shift","items":{"type":"object","properties":{"start":{"type":"string","format":"datetime","example":"2021-10-04 09:00:00","description":"The time of when the break will start"},"length":{"type":"number","format":"float","example":0.5,"description":"The break duration"},"break_is_payable":{"type":"boolean","description":"Whether the break is payable or not","enum":[true,false]}}}},"allowances":{"type":"array","items":{"type":"object","properties":{"allowance_id":{"type":"string","description":"Allowance Id","example":"300"},"allowance_rate_id":{"type":"string","description":"Allowance rate Id","example":"154"},"allowance_qty":{"type":"integer","description":"Number of unit of allowances requested for this shift (e.g.: X km of travel allowance)","example":5}}}},"comments":{"type":"array","items":{"type":"object","properties":{"comment":{"type":"string","description":"Comment to be added","example":"Employee should arrive 10 minutes early"},"visible_to_employee":{"type":"string","description":"Flag to make this comment visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>visible<\/td><\/tr><tr><td>0<\/td><td>hidden<\/td><\/tr><\/table>","enum":["1","0"]},"comment_id":{"type":"string","description":"If set, will update an existing comment with specified Id; use in conjunction with 'edited'","example":"100"},"edited":{"type":"boolean","description":"This property is required. If set to true, will update an existing comment; use in conjunction with 'comment_id'","enum":[true,false]},"to_delete":{"type":"boolean","description":"This property is required. To delete an existing comment, set this to true (in conjunction with 'comment_id'), otherwise, set to false","enum":[true,false]},"saved":{"type":"boolean","description":"This property is required. To create a new comment or update existing comment, set this to false","enum":[true,false]}}}},"is_holiday":{"type":"string","description":"Set the flag if shift occurs on a holiday\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td><\/td><td>Not a holiday<\/td><\/tr><tr><td>0<\/td><td>Holiday; treat as normal day, standard rules apply<\/td><\/tr><tr><td>1<\/td><td>Holiday; set as public holiday, shift will be paid as public holiday rate<\/td><\/tr><tr><td>2<\/td><td>Holiday; pay base rate, employee normal ordinary rate will be used, no overtime or shift loadings will be applied<\/td><\/tr><\/table>","enum":[null,0,1,2]},"until_end_time_required":{"type":"string","description":"Set this if employee is required until shift end time\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["0","1"]},"did_not_work":{"type":"string","description":"Set this to 1 if employee did not work during the shift\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_rule":{"type":"array","items":{"type":"object","properties":{"absent_comment":{"type":"string","description":"Description or reason for absence","example":"Covid Isolation"},"candidate_submitted":{"type":"string","description":"Is employee submitting this leave?\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":["1","0"]},"leave_pay_nopay":{"type":"string","description":"Indicates if leave is paid or unpaid leave","enum":["pay","nopay"]},"leave_rule_amount":{"type":"string","description":"Number of hours taken for this leave","example":"5.5"},"leave_rule_id":{"type":"string","description":"Leave rule id used (or null, if not applicable)","example":"5556"},"leave_title":{"type":"string","description":"Title of leave (based on leave recorded on system) or custom title for this shift","example":"Decline Reason"},"reason":{"type":"string","description":"Reason for leave; for possible values, look at the '\/api\/v1\/reason-list' route","example":"Approved Leave"},"reason_id":{"type":"integer","description":"Reason id in record; for possible values, look at the '\/api\/v1\/reason-list' route","example":2}}}},"approved":{"type":"boolean","description":"Set this to true if you want to approve the shift at the same time.","example":false}}}}}},"ApproveShiftApproveReimbursement":{"type":"object","properties":{"times_reimbursement_id":{"type":"integer","description":"Reimbursement record Id","example":1010}}},"ApproveShiftDeclineReimbursement":{"type":"object","properties":{"times_reimbursement_id":{"type":"integer","description":"Reimbursement record Id","example":1010}}},"CreateReimbursementRequest":{"type":"object","properties":{"reimbursement_type":{"type":"integer","description":"Reimbursement type Id","example":1},"amount":{"type":"number","description":"Reimbursement amount","example":102.5},"week_end":{"type":"string","description":"Weekend date of the reimbursement (in YYYY-MM-DD format)","example":"2026-06-07"},"date":{"type":"string","description":"The date the reimbursement incurred (in YYYY-MM-DD format)","example":"2026-06-01"},"file":{"type":"file","description":"File attachment linked to reimbursement (Allowed types: png, gif, jpg, pdf)","example":"file"},"roster":{"type":"integer","description":"Roster Id","example":101},"position":{"type":"integer","description":"Position Id","example":24},"can_id":{"type":"integer","description":"Employee Id","example":50},"comment":{"type":"string","description":"An optional comment (max: 250 characters)","example":"Example Comment"}}},"UpdateReimbursementRequest":{"type":"object","properties":{"id":{"type":"integer","description":"Id of existing reimbursement record","example":5},"reimbursement_type":{"type":"integer","description":"Reimbursement type Id","example":1},"amount":{"type":"number","description":"Reimbursement amount","example":102.5},"week_end":{"type":"string","description":"Weekend date of the reimbursement (in YYYY-MM-DD format)","example":"2026-06-07"},"date":{"type":"string","description":"The date the reimbursement incurred (in YYYY-MM-DD format)","example":"2026-06-01"},"file":{"type":"file","description":"File attachment linked to reimbursement","example":"file"},"roster":{"type":"integer","description":"Roster Id","example":101},"position":{"type":"integer","description":"Position Id","example":24},"can_id":{"type":"integer","description":"Employee Id","example":50},"comment":{"type":"string","description":"An optional comment (max: 250 characters)","example":"Example Comment"}}},"ApproveShiftV2GeoClockRequest":{"type":"object","properties":{"date_from":{"type":"string","description":"Start date to search for this request","example":"2026-06-01"},"date_to":{"type":"string","description":"End date to search for this request","example":"2026-06-01"},"client":{"type":"integer","description":"Operation id to search for","example":"43"},"employees":{"type":"array","items":{"type":"integer","description":"Employee id","example":"2345"}},"roster":{"type":"integer","description":"Roster branch id to search for","example":"34"},"filter_auto_pay":{"type":"boolean","description":"Filter to return salaried employees only? (default false)","enum":[1,0]}}},"ApproveShiftSaveRadiusBoundaryRequest":{"type":"object","properties":{"roster":{"type":"string","description":"Roster branch id","example":"23"},"size":{"type":"string","description":"Radius (in m) surrounding the roster physical location, where employees can login using the employee app with their own device","example":"78"},"longitude":{"type":"string","description":"Roster branch clock location longitude","example":"145.10294119"},"latitude":{"type":"string","description":"Roster branch clock location latitude","example":"-37.99282216"}}},"RecoverRosterArchiveRequest":{"type":"object","properties":{"ids":{"type":"array","items":{"type":"int","description":"Roster branch IDs that user wish to recover \/ unarchive","example":57}}}},"AddRosterBranchRequest":{"type":"object","properties":{"c_id":{"description":"Operation ID related to the roster branch","type":"string","example":"2"},"country_code":{"description":"Country code for this roster branch","type":"string","enum":["AU","NZ"],"required":true},"loc_id":{"description":"Location ID of the roster branch as specified in Platform Settings -> Locations Admin page","type":"string","example":"1","required":true},"title":{"description":"Roster branch name","type":"string","example":"Morning Shift for Store A","required":true},"state_id":{"description":"State ID of the location of the roster branch\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>ACT<\/td><\/tr><tr><td>2<\/td><td>NSW<\/td><\/tr><tr><td>3<\/td><td>NT<\/td><\/tr><tr><td>4<\/td><td>QLD<\/td><\/tr><tr><td>5<\/td><td>SA<\/td><\/tr><tr><td>6<\/td><td>TAS<\/td><\/tr><tr><td>7<\/td><td>VIC<\/td><\/tr><tr><td>8<\/td><td>WA<\/td><\/tr><\/table>","type":"string","example":"'4' for QLD","required":true},"street":{"description":"Street name of the roster branch location","type":"string","example":"241 Queen Street","required":true},"suburb":{"description":"Suburb of the roster branch location","type":"string","example":"Milton","required":true},"postcode":{"description":"Postcode of the roster branch location","type":"string","example":"4001","required":true},"contact_name":{"description":"Contact name for the roster branch","type":"string","example":"John Smith"},"contact_number":{"description":"Contact number for the roster branch","type":"string","example":"0412345678"},"po":{"description":"Purchase Order or Cost Code of the roster branch","type":"string","example":"PO-20192"},"note":{"description":"Roster branch note, 255 characters maximum","type":"string","example":"Morning roster for shop A"},"note_visible_to_employee":{"description":"Setting value whether roster branch note is visible to employee\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","type":"integer","example":1,"required":true},"location":{"description":"Location of the roster branch","type":"object","properties":{"longitude":{"description":"Longitude of the roster branch location","type":"number","example":146.7291969},"latitude":{"description":"Latitude of the roster branch location","type":"number","example":-19.3130024},"radius":{"description":"The radius (in m) from roster location, where employees can safely clock in from their own device using foundU Employee app","type":"number","example":5}}}}},"ClockNextWorkRequest":{"type":"object","properties":{"timestamp_now":{"type":"string","description":"Current date and time","example":"2026-06-01 03:32:51"}}},"ClockInRequest":{"type":"object","properties":{"start_time":{"type":"string","description":"Start time when clocking in","example":"2026-06-01 03:32:51"},"shift_id":{"type":"string","description":"Roster shift id","example":"24099"},"job_id":{"type":"string","description":"Job id","example":"17"},"branch_id":{"type":"string","description":"Roster branch id","example":"114"},"comment":{"type":"string","description":"Employee comment for the start of the shift","example":"Starting early for this shift"},"image":{"type":"string","format":"binary","description":"Uploaded employee picture taken when clocking in"}}},"ClockOutRequest":{"type":"object","properties":{"clock_log_id":{"type":"string","description":"Clock log id for the current shift","example":"8612"},"end_time":{"type":"string","description":"End time when clocking out","example":"2026-06-01 03:32:51"},"comment":{"type":"string","description":"Employee comment for the end of the shift","example":"Finished later than start time"},"image":{"type":"string","format":"binary","description":"Uploaded employee picture taken when clocking out"},"break_start_time":{"type":"string","description":"Shift break start time","example":"2026-06-01 03:32:51"},"break_end_time":{"type":"string","description":"Shift break end time","example":"2026-06-01 03:32:51"}}},"StartBreakRequest":{"type":"object","properties":{"clock_log_id":{"type":"string","description":"Clock log id for the current shift","example":"8612"},"time":{"type":"string","description":"Date and time when shift break was started","example":"2026-06-01 03:32:51"}}},"EndBreakRequest":{"type":"object","properties":{"clock_log_id":{"type":"string","description":"Clock log id for the current shift","example":"8612"},"time":{"type":"string","description":"Date and time when shift break was finished","example":"2026-06-01 03:32:51"}}},"EmployeeTagsV2Transformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-tags"},"attributes":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Tag Id","example":"8"},"label":{"type":"string","description":"Label of the Tag object","example":"Storefront Melbourne Street"},"tag_group_id":{"type":"string","description":"Id of tag group in which this tag belongs to","example":"3"},"tag_group_label":{"type":"string","description":"Label of the tag group in which this tag belongs to","example":"Awards"},"deleted_at":{"type":"string","description":"Datetime string of when this tag object was created","example":"2026-06-01 03:32:51"},"created_at":{"type":"string","description":"Datetime string of when the tag object was created","example":"2026-06-01 03:32:51"},"updated_at":{"type":"string","description":"Datetime string of when the tag object was last updated","example":"2026-06-01 03:32:51"}}}}}}}},"UpdateEmployeeRequest":{"type":"object","properties":{"external_id":{"description":"External ID for the employee. Usually set to previous system's ID.","type":"string","example":"5001A"},"first_name":{"description":"Employee first name.","type":"string","example":"Emily"},"middle_name":{"description":"Employee middle name.","type":"string","example":"Irene"},"surname":{"description":"Employee family name.","type":"string","example":"Smith"},"preferred_name":{"description":"Employee's preferred name.","type":"string","example":"Emma"},"email":{"description":"Employee email address.","type":"string","example":"emily.smith@hotmail.com"},"work_email":{"description":"Employee single sign-on email address.","type":"string","example":"emily.smith@test.com.au"},"mobile":{"description":"Employee mobile number.","type":"string","example":"0412345678"},"status":{"description":"Employee status within the system","type":"string","enum":["Available","Pending","Declined","Archived"]}}},"EmployeeAddTagsRequest":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"object","properties":{"tag_id":{"type":"string","description":"Tag id to be linked to this employee.","example":"7"}}}}}},"EmployeeRemoveTagsRequest":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"object","properties":{"tag_id":{"type":"string","description":"Tag id to be removed from employee record.","example":"7"}}}}}},"EmployeeSetTagsRequest":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string","description":"Tag label to be linked to this employee)","example":"Masks"},"id":{"type":"string","description":"Tag id to be linked to this employee)","example":"7"}}}}}},"EmployeeComplianceV2Transformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-compliance-details"},"attributes":{"type":"object","properties":{"visa_right_to_work":{"type":"object","description":"Visa details about the employee. Only available if the working_visa_check component has been configured through onboarding","properties":{"visa_status":{"type":"string","description":"Whether or not employee is Australia citizen, Australia resident, New Zealand citizen, Student Visa, or Other Visa","enum":["citizen","resident","nzcitizen","student","other"]},"visa_type":{"type":"string","description":"Type of Visa","example":"457"},"visa_date":{"type":"string","description":"Visa expiry date. In Y-m-d format","example":"2022-07-07"},"visa_passport_number":{"type":"string","description":"Visa number or passport number","example":"5574369"},"visa_issue_country":{"type":"string","description":"The country that issued the visa in ISO3 country code","example":"CHL"}}},"working_with_children_check":{"type":"object","description":"Returns employee's Bluecard (Working with Children) details","properties":{"card_number":{"type":"string","description":"Bluecard number","example":"19866694A-88"},"card_expiry":{"type":"string","description":"Bluecard expiry date","example":"2026-06-01"},"card_document":{"type":"string","description":"Bluecard document name stored in the system","example":"bluecard_document_5663446.jpg"}}},"police_clearance_check":{"type":"object","description":"Returns employee's Police Clearance check details","properties":{"police_clearance_assessment_date":{"type":"string","description":"Police Clearance assessment date","example":"2026-06-01"},"police_clearance_document":{"type":"string","description":"Police Clearance document name stored in the system","example":"POLCLEARANCE_43666436.pdf"}}}}},"relationships":{"type":"object","properties":{"employee-qualification":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":15},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-qualification"}}}}}},"employee-licence":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":96},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-licence"}}}}}},"employee-induction":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":17},"type":{"type":"integer","description":"Type of side loaded relationship","example":"employee-induction"}}}}}}}}}},"EmployeeQualificationExpiryTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-qualification"},"attributes":{"type":"object","properties":{"filename":{"type":"string","description":"Qualification \/ licence \/ induction filename","example":"John_Smith_CertIV_Qualification.pdf"},"captured_date":{"type":"string","description":"Recorded capture date (with licence, this can equal to expiry date)","example":"2026-06-01"},"licence_number":{"type":"string","description":"Qualification \/ licence \/ induction document number\/ID (if available)","example":"123456789"},"expiry":{"type":"string","description":"Document expiry date (if available)","example":"2026-06-01"},"assessment_date":{"type":"string","description":"Assessment date (if available)","example":"2026-06-01"},"external_url":{"type":"string","description":"External link to qualification \/ licence \/ induction (if available)","example":"https:\/\/example.com\/document"}}},"relationships":{"type":"object","properties":{"qualification-settings":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":14},"type":{"type":"integer","description":"Type of side loaded relationship","example":"qualification-settings"}}}}}}}}},"JobsQualificationTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"qualification-settings"},"attributes":{"type":"object","properties":{"name":{"type":"string","description":"Name of qualification \/ licence \/ induction","example":"High risk licence"},"type":{"type":"string","description":"Qualification \/ licence \/ induction","enum":["qualification","licence","induction"]},"expiry_type":{"type":"string","description":"Whether or not the date of licence \/ induction is expiry date or assessment date","enum":["expiry","assess"]},"assessment_days":{"type":"integer","description":"If licence \/ induction is set to assessment date, this will be the number of days until that date reaches expiry date","example":"365"}}}}},"EmployeeLicenceTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-licence"},"attributes":{"type":"object","properties":{"filename":{"type":"string","description":"Qualification \/ licence \/ induction filename","example":"John_Smith_CertIV_Qualification.pdf"},"captured_date":{"type":"string","description":"Recorded capture date (with licence, this can equal to expiry date)","example":"2026-06-01"},"licence_number":{"type":"string","description":"Qualification \/ licence \/ induction document number\/ID (if available)","example":"123456789"},"expiry":{"type":"string","description":"Document expiry date (if available)","example":"2026-06-01"},"assessment_date":{"type":"string","description":"Assessment date (if available)","example":"2026-06-01"},"external_url":{"type":"string","description":"External link to qualification \/ licence \/ induction (if available)","example":"https:\/\/example.com\/document"}}},"relationships":{"type":"object","properties":{"qualification-settings":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":87},"type":{"type":"integer","description":"Type of side loaded relationship","example":"qualification-settings"}}}}}}}}},"EmployeeInductionTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-induction"},"attributes":{"type":"object","properties":{"filename":{"type":"string","description":"Qualification \/ licence \/ induction filename","example":"John_Smith_CertIV_Qualification.pdf"},"captured_date":{"type":"string","description":"Recorded capture date (with licence, this can equal to expiry date)","example":"2026-06-01"},"licence_number":{"type":"string","description":"Qualification \/ licence \/ induction document number\/ID (if available)","example":"123456789"},"expiry":{"type":"string","description":"Document expiry date (if available)","example":"2026-06-01"},"assessment_date":{"type":"string","description":"Assessment date (if available)","example":"2026-06-01"},"external_url":{"type":"string","description":"External link to qualification \/ licence \/ induction (if available)","example":"https:\/\/example.com\/document"}}},"relationships":{"type":"object","properties":{"qualification-settings":{"type":"object","properties":{"data":{"type":"object","properties":{"id":{"type":"integer","description":"ID of side loaded relationship","example":71},"type":{"type":"integer","description":"Type of side loaded relationship","example":"qualification-settings"}}}}}}}}},"EmployeeLeaveHistoryTransformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-leave-history"},"attributes":{"type":"object","properties":{"type":{"type":"string","description":"Leave type","example":"Annual Leave"},"amount":{"type":"string","description":"Amount of hours applied","example":"20.0000"},"start_date":{"type":"string","description":"Start date of leave period being applied","example":"1st June 2026"},"end_date":{"type":"string","description":"End date of leave period being applied","example":"1st June 2026"},"reason":{"type":"string","description":"Reason for leave being applied","example":"Doctor's appointment"},"submitted":{"type":"string","description":"Leave application submission date","example":"1 June 2026"},"status":{"type":"string","description":"Status of leave application","enum":["Approved","Declined","Pending"]},"has_file":{"type":"boolean","description":"Whether this leave application has a file attachment","enum":[true,false]}}}}},"EmployeeSaveHrDetailsRequest":{"type":"object","properties":{"dob":{"description":"The employee's date of birth. Format.","type":"string","example":"1979-03-07"},"address":{"type":"object","properties":{"street":{"type":"string","description":"Employee address street.","example":"123 Eagle street"},"suburb":{"type":"string","description":"Employee address suburb.","example":"Milton"},"state":{"type":"string","description":"Employee address state.","example":"NSW"},"postcode":{"type":"string","description":"Employee address postcode.","example":"4123"}}},"employment_start_date":{"type":"string","description":"Employment start date. Format: Y-m-d","example":"1991-01-03"},"income_type_code":{"type":"string","description":"Income type code id","example":"SAW"},"country_of_origin_code":{"type":"string","description":"Country of origin code id","example":"NZ"},"manager":{"type":"integer","description":"Manager id; to get all values, refer to this route: '\/api\/v1\/managers'","example":"12"},"office_code":{"type":"integer","description":"Office code id; to get all values, refer to this route: '\/api\/v1\/office-codes'","example":"3"},"gender":{"type":"enum","description":"Employee gender\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>M<\/td><td>male<\/td><\/tr><tr><td>F<\/td><td>female<\/td><\/tr><tr><td>O<\/td><td>other<\/td><\/tr><tr><td>S<\/td><td>specify term<\/td><\/tr><tr><td>Unknown<\/td><td>unknown<\/td><\/tr><\/table>","enum":["M","F","O","S","Unknown"]},"gender_detail":{"type":"string","description":"Specify gender terminology here (Only required if gender is S)","example":"Asexual"}}},"EmployeeSaveComplianceDetailsRequest":{"type":"object","properties":{"visa_right_to_work":{"type":"object","properties":{"visa_status":{"type":"string","description":"Whether or not employee is Australia citizen, Australia resident, New Zealand citizen, Student Visa, or Other Visa.","enum":["citizen","resident","nzcitizen","student","other"]},"visa_type":{"type":"string","description":"Type of Visa.","example":"457"},"visa_date":{"type":"string","description":"Visa expiry date. In Y-m-d format.","example":"2022-07-07"},"visa_passport_number":{"type":"string","description":"Visa number or passport number.","example":"5574369"},"visa_issue_country":{"type":"string","description":"The country that issued the visa in ISO3 country code.","example":"CHL"}}}}},"EmployeeUploadDriversLicenseRequest":{"type":"object","properties":{"uploaded_files":{"type":"array","items":{"description":"File to be uploaded","type":"string","format":"binary"}},"licence_type":{"description":"Type of driver licence","type":"string","enum":["open","provisional","learner"]},"expiry_date":{"type":"string","description":"Expiry date of driver's licence","example":"2026-06-01"},"licence_number":{"type":"string","description":"Driver's licence number","example":"9034659"},"licence_state":{"type":"string","description":"Driver's licence state","enum":["qld","nsw","act","vic","tas","wa","sa","nt","international","QLD","NSW","ACT","VIC","TAS","WA","SA","NT","INTERNATIONAL"]},"overwrite":{"type":"boolean","description":"If set to true, will overwrite existing driver's licence data","enum":[true,false]}}},"EmployeeUploadCredentialsRequest":{"type":"object","properties":{"uploaded_files":{"type":"array","items":{"description":"File to be uploaded (png,jpeg,doc,docx,pdf,gif) up to 4MB in size","type":"string","format":"binary"}},"type":{"type":"string","description":"Credential type","enum":["qualification","induction","licence"]},"credential_id":{"type":"string","description":"Credential id; for possible values, refer to '\/api\/v1\/qualifications' route","example":"2"},"overwrite":{"type":"boolean","description":"If set to true, will overwrite existing credential with similar 'credential_id'","enum":[true,false]},"assess_or_expiry_date":{"type":"string","description":"Assessment date (in case of induction) or expiry date (in case of licence). For qualifications, please do not supply this field","example":"2026-06-01"},"external_file_url":{"type":"string","description":"External URL pointing to the credentials file","example":"https:\/\/www.test.com.au\/file\/qualifications.pdf"}}},"EmployeeFinancialV2Transformer":{"type":"object","properties":{"id":{"type":"integer","description":"ID of the resource","example":321},"type":{"type":"string","description":"Type of the resource","example":"employee-financial-details"},"attributes":{"type":"object","properties":{"bank_details":{"type":"object","properties":{"account_name":{"type":"string","description":"Employee bank account name","example":"John McDoe"},"bsb":{"type":"string","description":"Employee bank account bsb number","example":"633-000"},"account_number":{"type":"string","description":"Employee bank account number","example":"1402029458"}}},"additional_bank_details":{"type":"array","items":{"type":"object","properties":{"account_name":{"type":"string","description":"Employee bank account name","example":"John Secondary"},"bsb":{"type":"string","description":"Employee bank account bsb number","example":"031-212"},"account_number":{"type":"string","description":"Employee bank account number","example":"1402029438"},"amount":{"type":"string","description":"The amount to put in this additional account","example":"20"},"amount_type":{"type":"string","description":"Unit type for the amount to be transferred into the bank account. $20 or 20% for example","enum":["$","%"]}}}},"tfn":{"type":"string","description":"Employee Tax File Number","example":"123456789"},"superannuation":{"type":"object","properties":{"type":{"type":"string","description":"Type of employee superannuation account","enum":["employee_super_account","employer_default_fund","self_managed_super_fund"]},"fund_name":{"type":"string","description":"Superannuation fund name (only for employee_super_account and employer_default_fund)","example":"HESTA"},"usi":{"type":"string","description":"Unique Superannuation Identifier for the fund (only for employee_super_account and employer_default_fund)","example":"(USI: HST0100AU)"},"account_id":{"type":"string","description":"Employee superannuation account identifier (employee_super_account type only)","example":"67609490"},"esa":{"type":"string","description":"Electronic Service Address (self_managed_super_fund only)","example":"j doe super fund"},"account_name":{"type":"string","description":"Employee superannuation account name (self_managed_super_fund only)","example":"AUSMAK SUPERANNUATION FUND"},"abn":{"type":"string","description":"Superannuation fund Australian Business Number (self_managed_super_fund only)","example":"50036793473"},"account_number":{"type":"string","description":"Superannuation fund account number (self_managed_super_fund only)","example":"1122545"},"bsb":{"type":"string","description":"Superannuation fund bsb number (self_managed_super_fund only)","example":"033-100"},"super_guarantee":{"type":"numeric","description":"Superannuation guarantee %","example":"9.5"},"minimum_super_guarantee_amount":{"type":"numeric","description":"The minimum amount of super guarantee to be paid on each payslip","example":"100"},"ignore_super_contribution_cap":{"type":"boolean","description":"Flag to indicate if the superannuation guarantee cap is ignored","example":"100"},"is_ignore_super_contribution_cap_editable":{"type":"boolean","description":"Flag to indicate if the superannuation guarantee cap ignore flag is editable","example":"100"},"salary_sacrifice_amount":{"type":"numeric","description":"Employee salary sacrifice amount","example":"25"},"salary_sacrifice_type":{"type":"string","description":"Employee salary sacrifice type","example":"$","enum":["$","%"]},"employee_personal_super_contribution":{"type":"numeric","description":"Employee personal super contribution","example":"25"},"employer_additional_super_contribution_amount":{"type":"numeric","description":"Employer additional super contribution amount","example":"25"},"employer_additional_super_contribution_type":{"type":"string","description":"Employer additional super contribution type","enum":["$","%"]},"report_employer_super_contribution":{"type":"int","description":"Report employer super contribution to ATO","enum":[-1,0,1]}}},"withholding_variations":{"type":"object","description":"History of withholding variations in descending order by effective_from field","properties":{"id":{"type":"int","description":"Record id of variation","example":"1"},"percentage":{"type":"numeric","description":"Percentage of tax to be withheld","example":"22.5"},"from":{"type":"string","description":"Date of when the variation starts","example":"2026-04-30"},"to":{"type":"string","description":"Date of when the variation ends","example":"2026-06-30"},"financial_year":{"type":"integer","description":"Financial year the variation applies to","example":"2026"},"created_at":{"type":"string","description":"Date of when the record was generated","example":"2026-01-30"},"created_by":{"type":"string","description":"Name of user who created the record","example":"John Smith"},"created_by_avatar":{"type":"string","description":"Profile picture of user","example":""}}},"active_withholding_variation":{"type":"integer","description":"Currently active or upcoming variation record, if applicable","example":1},"working_holiday_maker_existing_ytd":{"type":"object","description":"Existing Working Holiday Maker YTD. Note: This will only be applicable for a WHM employee.","properties":{"id":{"type":"integer","description":"Record id","example":"1"},"gross":{"type":"numeric","description":"Gross amount for given financial year from external system for tax calculations","example":"2250.20"},"financial_year_ending":{"type":"string","description":"The year that the gross YTD value applies to for tax calculations","example":"2026-06-30"},"office_code_id":{"type":"integer","description":"Office code id the gross YTD applies to for tax calculations","example":"14"},"office_code_label":{"type":"integer","description":"Office code label the gross YTD applies to for tax calculations","example":"14"},"created_at":{"type":"string","description":"Date of when the record was generated","example":"2026-01-30"},"created_by":{"type":"string","description":"Name of user who created the record","example":"John Smith"},"created_by_avatar":{"type":"string","description":"Profile picture of user","example":""}}},"tax_file_number_declaration":{"type":"object","properties":{"additional_tax":{"type":"numeric","description":"$ amount of additional tax the employee wants to pay on each payslip","example":"25"},"tax_file_number":{"type":"string","description":"Employee tax file number. Please fill '000000000' if employee has provided a reason for exemption","example":"865414088"},"tfn_exemption_reason":{"type":"string","description":"If employee cannot provide a tax file number, provide a reason why. 'enquiry_to_ato' means Employee has made a separate application\/enquiry to the ATO for a new or existing TFN. 'under_18' means that Employee is claiming an exemption because employee is under 18 years of age and do not earn enough to pay tax. 'pension_benefit_allowance' means that employee is claiming an exemption because employee is in receipt of a pension, benefit or allowance. This field is optional.","enum":["enquiry_to_ato","under_18","pension_benefit_allowance"]},"previous_name_dealing_with_ato":{"type":"string","description":"If employee has changed their name since last dealt with ATO, provide previous name here. This field is optional.","example":"John Old Smith"},"payment_basis":{"type":"string","description":"Employment basis: Full-time employment, part-time employment, casual, labour hire, superannuation or annuity income stream.","enum":["casual","labour_hire","full_time","part_time","superannuation_income","not set"]},"resident_status":{"type":"string","description":"Is employee an Australian resident for tax purposes, foreign resident for tax purposes or a working holiday maker?","enum":["australian_resident","foreign_resident","working_holidaymaker"]},"working_holiday_maker_registered_employer":{"type":"boolean","description":"Present only if employee is marked as a working holiday maker. Indicates if the employer registered for working holiday makers"},"tax_free_threshold_from_employer":{"type":"string","description":"Is employee claiming tax-free threshold from this employer?","enum":["yes","no"]},"help_vsl_fs_ssl_tsl_debt":{"type":"string","description":"Does employee have a Higher Education Loan Program (HELP), VET Student Loan (VSL), Financial Supplement (FS), Student Start-up Loan (SSL) or Trade Support Loan (TSL) debt?","enum":["yes","no"]},"last_updated":{"type":"string","description":"Datetime string of the last time the tax file number declaration was updated. This will say 'not set' if value is null","example":"2026-06-01 03:32:51"},"tfn_file_history":{"type":"object","description":"History of TFN Declarations","properties":{"file_name":{"type":"string","description":"Filename of the pdf generated when saving tax file declaration","example":"TFN_Declaration_1626061128.pdf"},"external_path":{"type":"string","description":"File path to access the document (must be authenticated to access)","example":"\/storage\/candidate\/1\/documents\/TFN_Declaration_1626061128.pdf"},"last_modified":{"type":"string","description":"Unix timestamp of when the file was generated","example":"1626071148"},"last_modified_date_time":{"type":"string","description":"Human readable timestamp of when the file was generated","example":"1st January 1970 17:00"}}}}},"withholding_declaration":{"type":"object","properties":{"claim_vary_tax_offset_by_reducing_amount_withheld":{"type":"string","description":"Does employee want to claim or vary tax offset by reducing the amount withheld from payments made to employee?","enum":["yes","no"]},"tax_offset_amount_withheld":{"type":"string","description":"If answer to 'claim_vary_tax_offset_by_reducing_amount_withheld' is 'yes', specify the amount withheld here","example":"20.50"},"claim_vary_seniors_pensioners_tax_offset":{"type":"string","description":"Does employee want to claim or vary seniors and pensioners tax offset entitlement by reducing the amount withheld from payments made to employee?","enum":["yes","no"]},"seniors_pensioners_tax_offset_type":{"type":"string","description":"If answer to 'claim_vary_seniors_pensioners_tax_offset' is 'yes', select condition that apply to employee: Single (single), Member of illness-separated Couple (illness-separated) or Member of a couple (couple)","enum":["no","single","illness-separated","couple"]}}},"medicare_levy_declaration":{"type":"object","properties":{"Q4":{"type":"string","description":"Do you want your payer to increase the amounts withheld from you to cover the Medicare levy surcharge?","enum":["no","1%","1.25%","1.5%"]},"Q5":{"type":"string","description":"Do you qualify for a Medicare levy exemption? If no, go to question 8","enum":["yes","no"]},"Q6":{"type":"string","description":"Do you want to claim a full exemption from the Medicare levy?","enum":["yes","no"]},"Q7":{"type":"string","description":"Do you want to claim a half levy exemption from the Medicare levy? If yes, go to question 9","enum":["yes","no"]},"Q8":{"type":"string","description":"Do you want to claim a Medicare levy reduction? If yes, go to question 9","enum":["yes","no"]},"Q9":{"type":"string","description":"Do you have a dependant spouse? (see definition of spouse on ATO website)","enum":["yes","no"]},"Q10":{"type":"string","description":"Is the combined weekly income of you and your spouse, or your income as a sole parent, less than the relevant amount in Weekly Income table? (see table at https:\/\/www.ato.gov.au\/Rates\/Medicare-levy-adjustment-weekly-tax-table\/)","enum":["yes","no"]},"Q11A":{"type":"string","description":"Do you have a Higher Education Loan Program (HELP) or Trade Support Loan (TSL) debt? If you answered yes at question 10 as well as here, you are exempt from having additional PAYG amounts for HELP or TSL withheld from payments to you.","enum":["yes","no"]},"Q11B":{"type":"string","description":"Do you have a Financial Supplement debt? If you answered yes at question 10 as well as here, you are exempt from having additional PAYG amounts for Financial Supplement debts withheld from payments to you.","enum":["yes","no"]},"Q12":{"type":"string","description":"Do you have dependent children?","enum":["no","1","2","3","4","5","6","7","8","9","10"]},"last_updated":{"type":"string","description":"Datetime string of when the medicare levy declaration was last updated","example":"2026-06-01 03:32:51"}}}}}}},"EmployeeSaveFinancialDetailsRequest":{"type":"object","properties":{"bank_details":{"type":"object","properties":{"account_name":{"type":"string","description":"Employee bank account name.","example":"John McDoe"},"bsb":{"type":"string","description":"Employee bank account bsb number.","example":"633-000"},"account_number":{"type":"string","description":"Employee bank account number.","example":"1402029458"}}},"additional_bank_details":{"type":"array","items":{"type":"object","properties":{"account_name":{"type":"string","description":"Employee bank account name","example":"John Secondary"},"bsb":{"type":"string","description":"Employee bank account bsb number","example":"031-212"},"account_number":{"type":"string","description":"Employee bank account number","example":"1402029438"},"amount":{"type":"string","description":"The amount to put in this additional account","example":"20"},"amount_type":{"type":"string","description":"Unit type for the amount to be transferred into the bank account. $20 or 20% for example","enum":["$","%"]}}}},"superannuation":{"type":"object","properties":{"type":{"type":"string","description":"Type of employee superannuation account.","enum":["employee_super_account","employer_default_fund","self_managed_super_fund"]},"fund_name":{"type":"string","description":"Superannuation fund name (employee_super_account type only)","example":"HESTA"},"usi":{"type":"string","description":"Unique Superannuation Identifier for the fund (employee_super_account type only)","example":"(USI:HST0100AU)"},"account_id":{"type":"string","description":"Employee superannuation account identifier (employee_super_account type only)","example":"67609490"},"esa":{"type":"string","description":"Electronic Service Address (self_managed_super_fund only)","example":"j doe super fund"},"account_name":{"type":"string","description":"Employee superannuation account name (self_managed_super_fund only)","example":"AUSMAK SUPERANNUATION FUND"},"abn":{"type":"string","description":"Superannuation fund Australian Business Number (self_managed_super_fund only)","example":"50036793473"},"account_number":{"type":"string","description":"Superannuation fund account number (self_managed_super_fund only)","example":"1122545"},"bsb":{"type":"string","description":"Superannuation fund bsb number (self_managed_super_fund only)","example":"033-100"},"super_guarantee":{"type":"numeric","description":"Superannuation guarantee %","example":"9.5"},"minimum_super_guarantee_amount":{"type":"numeric","description":"The minimum amount of super guarantee to be paid on each payslip","example":"100"},"ignore_super_contribution_cap":{"type":"boolean","description":"Flag to ignore super guarantee cap","example":"false"},"salary_sacrifice_amount":{"type":"numeric","description":"Employee salary sacrifice amount","example":"25"},"salary_sacrifice_type":{"type":"string","description":"Employee salary sacrifice type","example":"$","enum":["$","%"]},"employee_personal_super_contribution":{"type":"numeric","description":"Employee personal super contribution","example":"25"},"employer_additional_super_contribution_amount":{"type":"numeric","description":"Employer additional super contribution amount","example":"25"},"employer_additional_super_contribution_type":{"type":"string","description":"Employer additional super contribution type","enum":["$","%"]},"report_employer_super_contribution":{"type":"int","description":"Report employer super contribution to ATO","enum":[-1,0,1]}}},"tax_file_number_declaration":{"type":"object","properties":{"additional_tax":{"type":"numeric","description":"$ amount of additional tax the employee wants to pay on each payslip","example":"25"},"tax_file_number":{"type":"string","description":"Employee tax file number. Please fill '000000000' if employee has provided a reason for exemption.","example":"865414088"},"tfn_exemption_reason":{"type":"string","description":"If employee cannot provide a tax file number, provide a reason why. 'enquiry_to_ato' means Employee has made a separate application\/enquiry to the ATO for a new or existing TFN. 'under_18' means that Employee is claiming an exemption because employee is under 18 years of age and do not earn enough to pay tax. 'pension_benefit_allowance' means that employee is claiming an exemption because employee is in receipt of a pension, benefit or allowance. This field is optional.","enum":["enquiry_to_ato","under_18","pension_benefit_allowance"]},"previous_name_dealing_with_ato":{"type":"string","description":"If employee has changed their name since last dealt with ATO, provide previous name here. This field is optional.","example":"John Old Smith"},"payment_basis":{"type":"string","description":"Employment basis: Full-time employment, part-time employment, labour hire, superannuation or annuity income stream.","enum":["casual","labour_hire","full_time","part_time","superannuation_income"]},"resident_status":{"type":"string","description":"Is employee an Australian resident for tax purposes, foreign resident for tax purposes or a working holiday maker?","enum":["australian_resident","foreign_resident","working_holidaymaker"]},"tax_free_threshold_from_employer":{"type":"string","description":"Is employee claiming tax-free threshold from this employer?","enum":["yes","no"]},"help_vsl_fs_ssl_tsl_debt":{"type":"string","description":"Does employee have a Higher Education Loan Program (HELP), VET Student Loan (VSL), Financial Supplement (FS), Student Start-up Loan (SSL) or Trade Support Loan (TSL) debt?","enum":["yes","no"]}}},"foreign_tax_rate_percent":{"type":"numeric","description":"The foreign tax percentage on the taxable foreign income","example":"25"},"is_labour_hire":{"type":"boolean","description":"Employee is employed as labour hire","example":"false"},"withholding_declaration":{"type":"object","properties":{"claim_vary_tax_offset_by_reducing_amount_withheld":{"type":"string","description":"Does employee want to claim or vary tax offset by reducing the amount withheld from payments made to employee?","enum":["yes","no"]},"tax_offset_amount_withheld":{"type":"string","description":"If answer to 'claim_vary_tax_offset_by_reducing_amount_withheld' is 'yes', specify the amount withheld here (numeric)","example":"20.50"},"claim_vary_seniors_pensioners_tax_offset":{"type":"string","description":"Does employee want to claim or vary seniors and pensioners tax offset entitlement by reducing the amount withheld from payments made to employee?","enum":["yes","no"]},"seniors_pensioners_tax_offset_type":{"type":"string","description":"If answer to 'claim_vary_seniors_pensioners_tax_offset' is 'yes', select condition that apply to employee: Single (single), Member of illness-separated Couple (illness-separated) or Member of a couple (couple)","enum":["no","single","illness-separated","couple"]}}},"medicare_levy_declaration":{"type":"object","properties":{"Q4":{"type":"string","description":"Do you want your payer to increase the amounts withheld from you to cover the Medicare levy surcharge?","enum":["no","1%","1.25%","1.5%"]},"Q5":{"type":"string","description":"Do you qualify for a Medicare levy exemption? If no, go to question 8","enum":["yes","no"]},"Q6":{"type":"string","description":"Do you want to claim a full exemption from the Medicare levy?","enum":["yes","no"]},"Q7":{"type":"string","description":"Do you want to claim a half levy exemption from the Medicare levy? If yes, go to question 9","enum":["yes","no"]},"Q8":{"type":"string","description":"Do you want to claim a Medicare levy reduction? If yes, go to question 9","enum":["yes","no"]},"Q9":{"type":"string","description":"Do you have a dependant spouse? (see definition of spouse on ATO website)","enum":["yes","no"]},"Q10":{"type":"string","description":"Is the combined weekly income of you and your spouse, or your income as a sole parent, less than the relevant amount in Weekly Income table? (see table at https:\/\/www.ato.gov.au\/Rates\/Medicare-levy-adjustment-weekly-tax-table\/)","enum":["yes","no"]},"Q11A":{"type":"string","description":"Do you have a Higher Education Loan Program (HELP) or Trade Support Loan (TSL) debt? If you answered yes at question 10 as well as here, you are exempt from having additional PAYG amounts for HELP or TSL withheld from payments to you.","enum":["yes","no"]},"Q11B":{"type":"string","description":"Do you have a Financial Supplement debt? If you answered yes at question 10 as well as here, you are exempt from having additional PAYG amounts for Financial Supplement debts withheld from payments to you.","enum":["yes","no"]},"Q12":{"type":"string","description":"Do you have dependent children?","enum":["no","1","2","3","4","5","6","7","8","9","10"]}}}}},"CreateEmployeeRequest":{"type":"object","properties":{"first_name":{"description":"The employee's first name.","type":"string","example":"Emily"},"middle_name":{"description":"The employee's middle name.","type":"string","example":"Irene"},"surname":{"description":"The employee's family name.","type":"string","example":"Smith"},"preferred_name":{"description":"Employee's preferred name.","type":"string","example":"Jake Williams"},"mobile":{"description":"Employee mobile number","type":"string","example":"0412345678"},"email":{"description":"Employee email address. This will return a HTTP\/409 if a user is trying to input an existing email address","type":"string","example":"jake@hotmail.com"},"work_email":{"description":"Employee's single sign-on email address. This will return a HTTP\/409 if a user is trying to input an existing email address","type":"string","example":"jake@thecompany.com.au"},"external_id":{"description":"External ID for the employee. Usually set to previous system's ID.","type":"string","example":"5001"},"send_welcome_email":{"type":" boolean","default":1,"description":"Flag to indicate sending welcome email, default to true if not specified\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true, send welcome email<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","enum":[1,0]},"is_contractor":{"description":"Flag to indicate if employee is a contractor\n\n<table><tr><td>Value<\/td><td>Meaning<\/td><\/tr><tr><td>1<\/td><td>true<\/td><\/tr><tr><td>0<\/td><td>false<\/td><\/tr><\/table>","type":"boolean","enum":[1,0]}}},"UploadResumeRequest":{"type":"object","properties":{"resume":{"type":"string","format":"binary","description":"Resum\u00e9 file to be uploaded. Max. file size is 30 Mb"}}},"ApproveShiftV3SearchRequest":{"type":"object","properties":{"filterIds":{"type":"array","description":"Get specific shifts (you still need the start and end filters for now)","example":[123,456,789],"items":{"type":"integer"}},"filterStartDate":{"type":"string","description":"Set the filter start date for the request","example":"2026-06-01"},"filterEndDate":{"type":"string","description":"Set the filter end date for the request","example":"2026-06-01"},"filterOperation":{"type":"array","description":"Filter the results by operation Id(s)","example":[120,121],"items":{"type":"integer"}},"filterRoster":{"type":"array","description":"Filter the results by roster branch Id(s)","example":[278,279],"items":{"type":"integer"}},"filterEmployee":{"type":"array","description":"Filter the results by employee Id(s)","example":[10034,10035],"items":{"type":"integer"}},"filterShiftCreation":{"type":"string","description":"Filter the results by creator of shifts","enum":["all","admin","employee"]},"filterShiftType":{"type":"array","description":"Filter the results by shift type","example":["approved"],"items":{"type":"string","enum":["all","unapproved","approved","declined"]}},"filterOfficeCode":{"type":"array","description":"Filter the results by office code Id(s)","example":[1,2,3],"items":{"type":"integer"}},"filterAllowancesOnly":{"type":"boolean","description":"Filter the results to only include shifts with allowances","example":1},"filterShiftWithQuestionnaireComment":{"type":"boolean","description":"Filter the results to only include shifts with questionnaire comments","example":1},"filterUpdatedSince":{"type":"string","description":"Filter the results to records updated since timestamp","example":"2026-06-01 03:32:51"},"include":{"type":"string","description":"Include data relationships","enum":["tags","tag-groups"]},"limit":{"type":"integer","description":"Limit the number of results to be returned per page; default if not set is 100","example":100},"page":{"type":"integer","description":"Set the page number for results to be returned; default if not set is 1","example":1}}}},"securitySchemes":{"Init":{"type":"apiKey","name":"auth_token","in":"query","scheme":"https"},"OAuth2":{"type":"oauth2","name":"Bearer","in":"header","scheme":"https","flows":{"implicit":{"authorizationUrl":"https:\/\/api.foundu.com.au\/oauth\/authorize"},"authorizationCode":{"authorizationUrl":"https:\/\/api.foundu.com.au\/init\/integration","tokenUrl":"https:\/\/api.foundu.com.au\/oauth\/token","refreshUrl":"https:\/\/api.foundu.com.au\/oauth\/token"}}}}}}