Updates multiple timesheets. Returns 200 on success, or 400 if any entry fails validation.
Headers
-
API token (can be retrieved from account settings)
-
ID of organization, for which the operation must be performed
Body
Required
-
Timesheet ID. Must reference an existing entity
-
Date (format dd/MM/yyyy)
-
Timesheet status
Values are
UNSUBMITTED,SUBMITTED,REJECTED,APPROVED, orBILLED. -
Description of the work performed
-
Time spent, as a string with exactly two decimal places
-
Whether this time entry is billable
-
Department ID. Send null to clear
-
Office ID. Send null to clear
POST
/api-v1/timesheet/batch
curl \
--request POST 'https://wyzio.app/api-v1/timesheet/batch' \
--header "Content-Type: application/json" \
--data '[{"id":12345678,"date":"01/06/2026","status":"SUBMITTED","description":"Frontend development","time":8.0,"isBillable":true,"departmentId":12345678,"officeId":12345678}]'
Request examples
# Headers
# Payload
[
{
"id": 12345678,
"date": "01/06/2026",
"status": "SUBMITTED",
"description": "Frontend development",
"time": 8.0,
"isBillable": true,
"departmentId": 12345678,
"officeId": 12345678
}
]
Response examples (200)
{
"items": [
{
"errorCode": {
"errorCode": "NO_ERROR",
"errorDetailValues": [
{
"errorCode": "string",
"fieldName": "string",
"data": "string",
"isSevere": true
}
]
},
"possibleWorkflows": [
{
"id": 42,
"name": "string"
}
],
"error": true,
"severeError": true
}
]
}